문제 출처: https://www.acmicpc.net/problem/1065
문제
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int target = Integer.parseInt(reader.readLine());
System.out.println(calc(target));
}
private static int calc(int target) {
int answer = 99;
if (target < 100) {
return target;
} else {
for (int i = 100; i <= target; i++) {
int temp = i;
int initialValue = temp % 10 - temp / 10 % 10; // 100 -> 0과 0(마지막 - 두번째)
boolean flag = true;
temp /= 10; // 10
while (temp >= 10) {
int x = temp % 10; // 0
int y = temp / 10; // 1
if (initialValue != (x - y)) {
flag = false;
break;
}
temp /= 10;
}
answer = flag ? answer + 1 : answer;
}
}
return answer;
}
}