A, C 풀고 B 못 풀었습니다.
B도 막상 풀이 보니까 많이 아쉽도록 쉽네요.
1, 2로 이루어진 배열에서 a1~ ak 까지의 곱과 a(k+1) ~ an까지의 곱이 같은 k 중, 가장 작은 k를 출력하면 됩니다.
풀이:
2의 총 개수가 홀수라면, k = -1.
2의 총 개수가 짝수라면, (2의 총 개수 / 2) 번째 2가 등장하는 위치가 정답입니다.
n = x + y 인 x와 y를 구해야합니다.
x 자릿수의 총합과 y 자릿수의 총합은 1을 초과해서 차이나면 안 됩니다.
풀이:
각 자릿수를 2로 나눠서 x와 y에 나눠주면 됩니다.
풀이:
n이 짝수라면 알맞게 짝을 지어줄 수 없습니다.
n이 홀수일 때, n = 9일 때를 생각해서 한 번 짝을 지어봤습니다.
n = 9
↓
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18
15 부터 23 까지의 합을 만들어야함.
↓
1 - 14
3 - 13
5 - 12
7 - 11
9 - 10
18 - 2
17 - 4
16 - 6
15 - 8
이렇게 되길래, 똑같이 작동하도록 짝을 지어주는 코드를 작성했고 AC를 받았습니다.
정말 오랜만에 코포 했는데 아쉽기도 하고,
여태 그리디 안 한 거 생각하면 다행이란 생각이 들기도 하네요.
'코드포스' 카테고리의 다른 글
나중에 풀고 올리기 (0) | 2022.10.15 |
---|---|
Codeforces Round #818 (Div. 2) B 풀이 (0) | 2022.09.09 |
Codeforces Round #809 (Div. 2) (0) | 2022.07.21 |
코드포스 803 A,B,C 풀이 Codeforces Round #803 (Div. 2) (0) | 2022.07.01 |
코드포스 Codeforces Round #797 (Div. 3) ABCDE 풀이 (0) | 2022.06.08 |