728x90
https://www.acmicpc.net/problem/18222
18222번: 투에-모스 문자열
0과 1로 이루어진 길이가 무한한 문자열 X가 있다. 이 문자열은 다음과 같은 과정으로 만들어진다. X는 맨 처음에 "0"으로 시작한다. X에서 0을 1로, 1을 0으로 뒤바꾼 문자열 X'을 만든다. X의 뒤에
www.acmicpc.net
분할정복으로 되어있는데 규칙성으로 찾았다.
(k-1)를 binary로 바꾸고 모든 자리값을 더하면 해당 k번째 자리의 값이 된다.
def main():
k = int(input()) - 1
answer = 0
while k:
answer += k & 1
k >>= 1
print(answer % 2)
if __name__ == "__main__":
main()
'STUDY > Algorithm' 카테고리의 다른 글
[백준] 19583 싸이버개강총회 python (0) | 2022.02.11 |
---|---|
[백준] 20207 달력 python (0) | 2022.02.10 |
[백준] 3184 양 python (0) | 2022.02.08 |
[백준] 13549 숨바꼭질 3 python (0) | 2022.02.07 |
[백준] 2407 조합 python (0) | 2022.02.07 |