Published 2020. 12. 29. 01:34
 

1065번: 한수

어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나

www.acmicpc.net

#include <iostream>
#include <string>
using namespace std;

int nofhan(const int& n) {
	int res = 0;
	if (n < 100) {
		res += n;
		return res;
	}
	else if (n >= 100 && n < 1000) {
		int mid_ini = n;
		res += 99;
		while (mid_ini >= 100) {
			int mid = mid_ini;
			int a[3] = {};
			int idx = 0;
			while (mid > 0) {
				a[idx] = mid % 10;
				mid /= 10;
				idx++;
			}
			if (a[0] - a[1] == a[1] - a[2]) {
				res++;
			}
			mid_ini--;
		}
	}
	else if (n == 1000) {
		return nofhan(999);
	}
	return res;
}

int main() {
	ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);

	int n; cin >> n;

	cout << nofhan(n);

	return 0;
}

'Problem set' 카테고리의 다른 글

[백준] 1406: 에디터  (0) 2020.12.29
[백준] 1373: 2진수 8진수  (0) 2020.12.29
[백준] 1212: 8진수 2진수  (0) 2020.12.29
[백준] 1158: 요세푸스 문제  (0) 2020.12.29
[백준] 1110: 더하기 사이클  (0) 2020.12.29
복사했습니다!