https://www.acmicpc.net/problem/1065
#include <iostream>
using namespace std;
int han(int n);
int main() {
int N;
int cntOfHan = 0;
do {
cin >> N;
} while (N < 1 || N>1000);
for (int i = 1; i <= N; i++)
if (han(i)) cntOfHan++;
cout << cntOfHan;
}
int han(int n) {
int originN = n;
int digitCnt = 0;
int ToF = true;
do {
originN = originN / 10;
digitCnt++;
} while (originN > 0);
int *digit = new int[digitCnt];
for (int i = 0; i < digitCnt; i++) {
digit[i] = n % 10;
n = n / 10;
}
if (digitCnt > 2)
if((digit[digitCnt-1] - digit[digitCnt - 2]) != digit[digitCnt - 2] - digit[digitCnt - 3])
ToF = false;
return ToF;
}
'Programming > Algorithm' 카테고리의 다른 글
[C++]백준 2577번 : 숫자의 개수 (0) | 2019.02.03 |
---|---|
[C++]백준 1152번 :단어의 개수 (0) | 2019.02.03 |
[C++]백준 4673번:셀프 넘버 (0) | 2019.02.01 |
[C++]백준 1110번:더하기 사이클 (0) | 2019.02.01 |
[C++]백준 4344번:평균은 넘겠지 (0) | 2019.01.31 |