728x90
4673. 셀프 넘버
def self_num(n):
for i in str(n):
n += int(i)
return n
num_list = []
notselfnum_list = []
for i in range(1, 10001):
num_list.append(i)
for i in range(10001):
if self_num(i) in num_list:
num_list.remove(self_num(i))
for i in num_list:
print(i)
for문이 돌아갈 리스트 따로, 10000까지의 수는 range로 처리해서 하니 생각보다 쉽게 해결
1629. 곱셈
A, B, C = map(int, input().split())
def rest(a,b,c):
if b == 1:
return a ** b % c
elif b % 2 == 1:
return (rest(a, (b-1)//2, c)) ** 2 * a % c
else:
return (rest(a, b//2, c)) ** 2 % c
print(rest(A, B, C))
재귀함수 사용법을 몰랐을 때 반복문으로 풀려다 실패했던... 조금은 엉성하지만 그래도 재귀함수를 쓸 수 있게 됐다는 것에 의의를...
728x90
'알고리즘 > 백준' 카테고리의 다른 글
[백준]230127 문제풀이 (0) | 2023.01.30 |
---|---|
[백준]230126 문제풀이 (0) | 2023.01.26 |
[백준]230124 문제풀이 (0) | 2023.01.24 |
[백준]230121 문제풀이 (2) | 2023.01.21 |
[백준]230119 문제풀이 (0) | 2023.01.20 |
댓글