-
[백준][python] 4673번: 셀프 넘버알고리즘/Baekjoon 2022. 7. 27. 15:01
https://www.acmicpc.net/problem/4673
규칙을 알아낼려고 방정식을 계속 세워봤지만 해결이 안됐음..
set 집합형으로 문제를 푸는 방식이 있었다.
전체숫자 1~10000까지 미리 정의하고 생성자 있는 수를 차집합으로 빼는 방법이다.
그리고 각 자리 숫자를 더할때 나눗셈, 나머지 연산자가 아니라 각 자리 숫자를 문자열로 나누어서 그걸 다시 숫자로 바꾸어서 더하는 방식이다.
natural_num = set(range(1,10001)) generated_num = set() for i in natural_num: for j in str(i): i += int(j) generated_num.add(i) self_num = sorted(natural_num - generated_num) for i in self_num: print(i)
'알고리즘 > Baekjoon' 카테고리의 다른 글
[백준][python] 1157번: 단어 공부 (0) 2022.07.29 [백준][python] 10890 : 알파벳 찾기 (0) 2022.07.27 [백준][python] 11720번: 숫자의 합 (0) 2022.02.03 [백준][python] 4344번: 평균은 넘겠지 (0) 2022.02.03 [백준][python] 1546번: 평균 (0) 2022.02.03