반응형
문제
https://www.acmicpc.net/problem/2231
i를 1씩증가시키며 분해합을 찾고 생성자를 찾는다면 반복문을 종료시키고 출력해준다.
분해합을 찾는 방법은 10으로 나눈 나머지를 분해합에 더해주고 몫을 다시 10으로 나눠
서 나머지를 구해 분해합을 더해주는 방식으로구현하였다. 정답률이 높은만큼 쉬운문제
였다. python의 나누기 계산은 //을 통해 해주어야 자연수 몫이나온다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | n=int(input()) i=1 result=0 while(i<=n): s=i #i를 담아줌 sum=0 while(s>0):#몫이 0이 될때까지 나머지를 더함 sum += s%10 #10으로 나눠준 나머지를 더해줌 s=s//10 #10으로 나눈 몫을 넣어서 다시계산 if sum+i==n: result=i break i+=1 print(result) | cs |
반응형
'알고리즘(python) > 탐색' 카테고리의 다른 글
[Python]백트래킹 백준 15649 (0) | 2020.01.04 |
---|---|
[Python]Brute force 백준 1436 (0) | 2019.12.17 |
[Python]Brute force 백준 1018 (0) | 2019.12.17 |
[Python]Brute force 백준 7568 (0) | 2019.12.16 |
[Python]Brute force 백준 17298 (0) | 2019.12.15 |
최근댓글