본문 바로가기
OLD_알고리즘/Baekjoon

백준] 1065 : 한수

by 달승 2020. 12. 21.


 

1065번: 한수

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

www.acmicpc.net

 

 

🥑 문제 풀이

 

 

🌱 정답 코드

#include <iostream>
using namespace std;

int main() {
	
	int num, tmp_100, tmp_10, tmp_1;
	int cnt = 0;
	
	cin >> num;
	
	if(num > 0 && num < 100){
		cnt = num;
	}else if(num >= 100 && num < 1000){
		cnt = 99;
		for(int i = 111; i <= num; i++){
			tmp_100 = ((i / 10) / 10) % 10;
			tmp_10 = (i / 10) % 10;
			tmp_1 = i % 10;
		
			if(tmp_1 - tmp_10 == tmp_10 - tmp_100){
				cnt++; 
			}
		}
	}else if(num == 1000){
		cnt = 144;
	}
	
	cout << cnt;
	
	return 0;
}
#include <iostream>
using namespace std;

int main() {
	int num, tmp_100, tmp_10, tmp_1;
	int cnt = 0;
	
	cin >> num;
	
	for (int i = 1; i <= num; i++){
		if(i < 100){
			cnt = i;
		}
		else if(i > 99 && i < 1000){
			tmp_100 = ((i / 10) / 10) % 10;
			tmp_10 = (i / 10) % 10;
			tmp_1 = i % 10;
		
			if(tmp_1 - tmp_10 == tmp_10 - tmp_100){
				cnt++; 
			}
		}else if( i == 1000){
			cnt = 144;
		}
		
	}
	cout << cnt;
		
	return 0;
}

댓글