본문 바로가기
알고리즘 문제 풀이/완전탐색

백준 - 한수

by 가나무마 2021. 12. 12.
728x90

본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다.
저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다.

문의는 댓글 바람.

문제 출처 : https://www.acmicpc.net/problem/1065

 

[문제 설명]

1부터 N까지의 수가 있다. 이 중에 숫자의 각 자릿수가 등차수열을 이루는 경우의 개수를 구하시오.

[접근 방법]

나누기와 나머지 연산을 반복해서 각 자리수의 수가 모두 같으면 추가 하는 방법

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());
        int answer = 0;

        for (int i = 1; i <= N; i++) {
            boolean isHansu = true;
            int diffrence = ((i/10)%10) - i%10; //십의 자릿수 - 일의 자릿수.
            int num = i;

            while (num/10 > 0) {
                if (diffrence == ((num/10)%10-num%10)) {
                    isHansu = true;
                } else {
                    isHansu = false;
                    break;
                }
                num/=10;
            }
            if (isHansu) answer++;
        }
        System.out.println(answer);
    }
}

 

 

728x90
반응형

'알고리즘 문제 풀이 > 완전탐색' 카테고리의 다른 글

백준 - 유레카 이론  (0) 2021.12.22
백준 - 암호 만들기  (0) 2021.12.12
프로그래머스 - 소수 만들기  (0) 2021.11.25
프로그래머스 - 모의고사  (0) 2021.11.12
2309번 : 일곱난쟁이  (1) 2021.10.26