https://www.acmicpc.net/problem/1065
문제에서는 어느 한 정수의 각 자리가 등차수열을 이루면 그 값을 한수라고 설명한다.
일의 자리는 모두 한수이므로 cnt에 그 갯수만큼 저장하고 시작한다.
100부터 n까지의 숫자를 반복문으로 확인하면서 한수인지 확인한다.
(십의자리 - 일의자리)가 (백의자리 - 십의자리)와 같은지 검사하여 한수인지 판단한다.
같으면 한수고 아니면 한수가 아니다.
C
더보기
#include <stdio.h>
int isHansu(int v){
if((v/10)%10 - v%10 == v/100 - (v/10)%10) return 1;
else return 0;
}
int main() {
int n; scanf("%d", &n);
int cnt = (n < 100) ? n : 99;
for(int i = 100; i <= n; i++){
if(isHansu(i)) cnt++;
}
printf("%d", cnt);
}
Python
더보기
def isHansu(v):
if (v//10)%10 - v%10 == v//100 - (v//10)%10: return 1
else: return 0
n = int(input())
if n < 100: print(n)
else:
cnt = 0
for i in range(100, n+1):
if isHansu(i): cnt += 1
print(cnt + 99)
'브루트포스' 카테고리의 다른 글
[백준] 1773. 폭죽쇼 풀이 (0) | 2025.02.02 |
---|---|
[백준] 1590. 캠프가는 영식 풀이 (0) | 2025.02.02 |
[백준] 1526. 가장 큰 금민수 풀이 (0) | 2025.02.02 |
[백준] 1145. 적어도 대부분의 배수 풀이 (0) | 2025.02.02 |
[백준] 1075. 나누기 풀이 (0) | 2025.02.02 |