본문 바로가기

Python ◡̈/차근차근 Python

[백준 python] 1065 한수

 

www.acmicpc.net/problem/1065

 

1065번: 한수

어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나

www.acmicpc.net

 

 

<problem>

 

어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다.

N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 

 

 

<input>

첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다.

<output>

첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다.

 


 

<example>

 


 

<solution ①>

 

한수 개수 카운팅하는 함수 find_num 구현

  num < 100: num이 count 이므로 그냥 return

  else: 각 자리 수를 변수에 저장하여 100-10 == 10-1 수가 같은 경우 count + 1 return count

 

N 입력받아 변수에 저장하여 find_num(N) print

 


 

ⓒ ⓞ ⓓ ⓔ

 


 

ⓣ ⓔ ⓢ 

 


 

ⓕ ⓘ ⓝ ⓐ ⓛ    ⓒ ⓞ ⓓ ⓔ