등차수열에 대한 이해 : 1,3,5,7,9,⋯처럼 연속한 두 항의 차가 일정한 수열을 등차수열이라고 한다.
한수 : 어떤 숫자에 대해서 각 자리수들이 등차수열을 이루는 수.
공차(common difference) 또는 d : 연속한 두 항에서, 뒤 항에서 앞 항을 뺀 값 => 1,3,5,7,9... 에서 두번째 항 - 첫번째항 (3-1 = 2) 은 2(공차d)가 된다.
등차수열의 식 : a(n번째) = a + ( n − 1 ) * d
579를 식에 대입 : 9 = 5 + ( 3 − 1 ) * 2
import java.io.*;
public Main { //문제유형: 브루트포스 , 메모리 제한: 128MB, 시간 제한: 2초
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
int cnt = 0; // 한수 카운팅
if (num < 100) {
System.out.println(num);
}
else {
cnt = 99;
for (int i = 100; i <= num; i++) {
int hun = i / 100; // 백의 자릿수
int ten = (i / 10) % 10; // 십의 자릿수
int one = i % 10;
if ((hun - ten) == (ten - one)) { // 각 자릿수가 수열을 이루면
cnt++;
}
}
System.out.println(cnt);
}
}
}