- 난이도: 실버 4
- 알고리즘: 브루트포스 알고리즘
두자리 숫자는 전부 한수니까 그대로 출력하고, 세자리 숫자일 때만 등차수열인지 확인하는 과정을 거쳤다. 지금 생각해보니 굳이 % 10, /10으로 안하고 문자열로 형변환한 후에 과 만 비교해도 됐을 것 같다.
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n, cou = 0;
cin >> n;
if (n < 100) cout << n;
else {
cou = 99;
for (int i = 100; i <= n; i++) {
int num = i;
int n1, n2, n3;
int diff1, diff2;
n3 = num % 10;
num /= 10;
n2 = num % 10;
num /= 10;
n1 = num;
diff1 = n3 - n2;
diff2 = n2 - n1;
if (diff1 == diff2) cou++;
}
cout << cou;
}
}