728x90
완탐으로 열심히 풀어봤지만
결과는 메모리초과..시간 초과......
문제의 분류를 보니 수학이었다.
역시 완탐이 아니라 머리를 써서 공식을 알아내야하는 문제다.
코드 :
def cal(num) :
if num ==0 : return 0
elif num == 1 : return 1
elif num %2 ==0 : return num // 2 + 2*cal(num//2)
elif num %2 == 1 : return num //2 + 2*cal(num//2) +1
if __name__=="__main__" :
a,b = map(int,input().split())
print(cal(b) - cal(a-1))
이런 수학 문제가 코테에 나오나......
참고 블로그 :
https://dkrnfls.tistory.com/84
2로 몇 번 나누어질까[백준 1407] - python
이 문제는 크로아티에서 고등학생 대상으로 나온 문제다. 상당히 애를 먹었던 문제다.(아직 멀었나 보다) 코드 먼저 살펴보자 a,b = map(int, input().split()) def calc(number) : if number == 0 : return 0 el..
dkrnfls.tistory.com
반응형
'알고리즘 > 백준 문제풀이' 카테고리의 다른 글
[Python/BOJ] 백준 2579 계단오르기_DP (0) | 2022.08.29 |
---|---|
[삼성SW역량][Python/BOJ] 백준 15683 감시_(DFS+구현) (0) | 2022.08.26 |
[Python/BOJ] 백준 1034 램프_아이디어가 핵심 (0) | 2022.08.25 |
[Python/BOJ] 백준 1976 여행가자_유니온파인드 (1) | 2022.08.24 |
[Python/BOJ] 백준 12100 2048(EASY)_확인방향을 어떻게 해야할지 _[DFS,백트래킹,구현] (0) | 2022.08.23 |