2019. 7. 23. 12:14
728x90

문제 번호: 1065

문제 제목: 한수

문제 주소: https://www.acmicpc.net/problem/1065


문제 내용

입력한 숫자보다 작거나 같은 한수의 개수를 출력한다. 입력 범위는 1000 이하다.


테스트 케이스

1

1

110

99

210

105

1000

144


문제 풀이

0. 두 자리 수 이하는 모두 한수다.
1. 등차 수열을 이루는 세 수에 대해 N0 + N2 = N1 * 2 다.
 1.1. 2 특성에 의거, 백의 자리 수 + 일의 자리 수 = 십의 자리 수  * 2로 볼 수 있다.
 1.2. 백의 자리 수는 / 100 정도로만 해두는게 낫다. 이러면 1000이 입력됐을 때 10 + 0 = 0 * 2가 되어 한수가 아닌 것으로 처리된다.
2. 해당 조건이 성립한다면 한수인 것으로 집계한다.
3. 1~2를 반복한다.
※ 세 자리 수 중에서 100 ~ 110까지는 한수가 아니므로 111부터 반복문을 돌리면 된다.


풀이 코드

728x90

'공부 > 문제풀기' 카테고리의 다른 글

백준 2447 - 별 찍기 - 10  (0) 2019.07.23
백준 10872 - 팩토리얼  (0) 2019.07.23
백준 4673 - 셀프 넘버  (0) 2019.07.23
백준 15596 - 정수 N개의 합  (0) 2019.07.23
백준 4344 - 평균은 넘겠지  (0) 2019.07.22
Posted by 아야카