![[python] 백준 1094번 막대기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2F2sUUW%2FbtrfhJKdmqI%2FAAAAAAAAAAAAAAAAAAAAAANVhyhrKt09YBOPBal8SC20BNQOnl8WwKFHv_bCJ0tR%2Fimg.jpg%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3D6UebF9ojG3ZB%252F0bnMLY1PGZK%252BBc%253D)
[python] 백준 1094번 막대기알고리즘/백준2021. 9. 16. 21:14
Table of Contents
문제 요약 및 풀이
문제를 보자마자 아 그림으로 풀어야겠다 싶어서 그림으로 그려봤다.
순서는 ① -> ② -> ③ 순대로 보면 될 것 같다.
64를 반으로 나누면 32, 32 2개의 막대가 나오는데 하나의 막대는 버려야 하므로 절반으로 나누어 떨어질 때까지 문제에 있는 2가지 과정을 반복하다 보면 ②번과 같은 64 32 16 8 4 2 1 이 보여진다.
수 들의 공통점은 2^n 승이라는 것. 즉, 2진수로 표현이 가능하다.
③번과 같이 10진수로 입력을 받아 2진수로 변환을 해준후 1의 개수가 총 몇 개인지를 반환해주면 된다.
완성된 코드!!👍😊
print(bin(int(input()))[2:].count('1'))
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[python] 백준 20112번 사토르 마방진 (0) | 2021.09.21 |
---|---|
[python] 백준 11723번 집합 (0) | 2021.09.16 |
[python] 백준 1668번 트로피 진열 (0) | 2021.09.15 |
[python] 백준 1075번 나누기 (0) | 2021.09.13 |
[python] 백준 1977번 완전제곱수 (8) | 2021.09.09 |
@펄찌 :: Pearl's Story
많은 생각들을 가지고 있고 사람들과 대화를 하는 것이 즐거운 펄의 스페이스입니다.
즐거운 하루 되셨으면 좋겠습니다😊