본문 바로가기
BaekJoon/Silver

[BOJ/JAVA] 백준 1527 : 금민수의 개수 (자바)

by HoonSikE 2022. 4. 8.
반응형
SMALL
문제 정보
  문제명   - 금민수의 개수
  난이도   - 실버 I
문제 번호 - 1527번

문제 링크

BOJ_S1_1527_금민수의_개수

 

1527번: 금민수의 개수

첫째 줄에 A와 B가 주어진다. A는 1보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다. B는 A보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net


문제
은민이는 4와 7을 좋아하고, 나머지 숫자는 싫어한다. 금민수는 어떤 수가 4와 7로만 이루어진 수를 말한다.
A와 B가 주어졌을 때, A보다 크거나 같고, B보다 작거나 같은 자연수 중에 금민수인 것의 개수를 출력하는 프로그램을 작성하시오.

입력
첫째 줄A와 B가 주어진다.
A는 1보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다.
B는 A보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다.

출력
첫째 줄A보다 크거나 같고, B보다 작거나 같은 자연수 중에 금민수인 것의 개수를 출력한다.

예제 입력/출력
예제 입력 예제 출력
1 10 2
11 20 0
74 77 2
1000000 5000000 64

알고리즘 분류
● 브루트포스 알고리즘

소스코드
package Lv2_Silver;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
/**
 * @author HanHoon
 * @category 브루트포스 알고리즘
 * https://www.acmicpc.net/problem/1527
 */
public class BOJ_S1_1527_금민수의_개수 {
	static int result = 0;
	public static void makeGoldNumber(int count, int num, int N, int A, int B) {
		// 자리수가 N만큼 됐을 때
		if(count == N) {
			if(A <= num && num <= B)
				result++;
			return;
		}
		makeGoldNumber(count+1, num + 4 * (int)Math.pow(10, count), N, A, B);
		makeGoldNumber(count+1, num + 7 * (int)Math.pow(10, count), N, A, B);
	}
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		// A~B 범위 내의 금민수를 구해라!
		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		// 1,000,000,000 보다 작은 수로 만듦 (1자리수~9자리수)
		for (int N = 1; N < 10; N++)
			makeGoldNumber(0, 0, N, A, B);
		
		System.out.println(result);
		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

댓글