본문 바로가기
BaekJoon/Silver

[BOJ/JAVA] 백준 1065 : 한수 (자바)

by HoonSikE 2023. 1. 29.
반응형
SMALL
문제 정보
  문제명   - 한수
  난이도   - 실버 IV
문제 번호 - 1065번

문제 링크

https://www.acmicpc.net/problem/1065

 

1065번: 한수

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

www.acmicpc.net


문제
어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 

입력
첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다.

출력
첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다.

예제 입력/출력
예제 입력 예제 출력
110 99
1 1
210 105
1000 144
500 119

알고리즘 분류
● 완전탐색

소스코드
package Lv2_Silver;

import java.io.*;
import java.util.*;
/**
 * @author HanHoon
 * @category 완전탐색
 * https://www.acmicpc.net/problem/1065
 */
public class BOJ_S4_1065_한수 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder str = new StringBuilder();

        // 자연수 N
        int N = Integer.parseInt(br.readLine());

        int cnt = 0;

        if(N < 100)
            cnt = N;
        else{
            cnt = 99;

            for(int i = 100; i <= N; i++){
                int A = i / 100;
                int B = (i / 10) % 10;
                int C = i % 10;

                if((A-B)==(B-C))
                    cnt++;
            }
        }

        str.append(cnt);

        System.out.print(str);
        br.close();
    }
}

 


BaekJoon List
 

BaekJoon List

BOJ Start!! ● [BOJ] 백준 회원가입, 시작하는 법 ● [BOJ] 등급(티어) 및 Solved.AC 적용 ● [BOJ/JAVA] 백준 소스코드 제출 시 유의사항(자바) Bronze ● Bronze V  - ● Bronze IV  - ● Bronze III  -..

han-hoon.tistory.com


  

기회는 준비된 자에게 찾아온다.

 


 

반응형
LIST

댓글