A
어차피 ab하고 ba하고 차이가 1 아니면 0이기 때문에 문자 하나만 바꾸면 되겠거니 싶어서
문자열 처음부터 끝까지 돌면서 문자 하나하나 바꾸고 ab ba 개수 세는 방법으로 풀음
사실 ab는 a에서 b로 바뀔 때 나타나고 ba는 b에서 a로 바뀔 때 나타나므로
ab와 ba가 나타나는 횟수가 같으려면 문자열의 맨 앞 문자하고 맨 뒤 문자하고 같기만 하면 되는데
생각하기 귀찮아서 딴 방법으로 풀었다가 대회 끝나고 알게됨
B
대가리 좀 굴리면 되는 수학 문제
컴퓨터 수 N하고 케이블 수 K가 주어지고
처음에는 시간에 따라 케이블로 연결된 컴퓨터가 2^(시간)씩 늘어나지만
2^(시간)이 K를 넘어서게 되면 그때부터는 K개씩밖에 안 늘어남
잘 생각해보면 금방 공식 나옴
이상한 데에서 개뻘짓하다가 포기하고 바로 C번으로 넘어감
나중에 보니까 공식은 맞았더라
C
그리디 문제
숫자가 적은 지폐부터 때려박을 수 있는 대로 때려박으면 되는 문제임
최대 10^(다음 인덱스) / 10^(현재 인덱스) - 1개만큼 때려박을 수 있음
계속 K에다 이 최댓값을 빼가면서 진행하다가 가장 큰 수의 지폐까지 오거나
쓸 수 있는 지폐 수가 이 최댓값보다 적다면 다 몰빵해서 더해주면 됨
댓글 0