[BOJ]1065:単数
🔒 例
>> 110
99
>> 1
1
>> 210
105
>> 1000
144
🔧 に答える
1. n = int(sys.stdin.readline().rstrip())
2. 한수(x의 각 자리가 등차수열인 수) 구하기
2.1 1부터 99까지: 항상 한수 / 100부터 n까지 숫자 확인
2.2 문자열과 정수형을 번갈아가며 각 자리 수 차이 확인
🔑 答案用紙
import sys
n = int(sys.stdin.readline().rstrip())
cnt = n
if n > 99:
cnt = 99
for num in range(100, n+1):
# 123 135 147 159 234 246 258
flag = True
gap = int(str(num)[0]) - int(str(num)[1])
for i in range(2, len(str(num))):
if gap != int(str(num)[i-1]) - int(str(num)[i]):
flag = False
break
if flag:
cnt += 1
print(cnt)
💡 コンセプト
Reference
この問題について([BOJ]1065:単数), 我々は、より多くの情報をここで見つけました https://velog.io/@ohhj1999/BOJ-1065テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol