본문 바로가기
Algorithm/Baekjoon

[백준 알고리즘][자바] 2577번 : 숫자의 개수

by hyunipad 2023. 4. 24.
반응형

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

 

2577번: 숫자의 개수

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

www.acmicpc.net

문제 자체는 간단한 문제입니다.

세 개의 자연수 A, B, C의 곱의 값이 0부터 9까지의 숫자가 각각 몇번 쓰였는지 출력하면 되는 문제입니다.

 

이 문제를 포스팅하는 이유는 숫자로 이루어져있는 String 타입의 문자열을 char로 나누고 다시 int형으로 변환시키는 코드를 기록하기 위함입니다. int뿐만 아니라 다시 각각 String으로도 변환 가능하겠네요.

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

public class Number_2577 {

	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		int A = Integer.parseInt(br.readLine());
		int B = Integer.parseInt(br.readLine());
		int C = Integer.parseInt(br.readLine());
		
		String ABC = String.valueOf(A*B*C);
		int[] count = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
		
		for(int i = 0 ; i < ABC.length() ; i++) {
			int num =  Integer.parseInt(String.valueOf(ABC.charAt(i)));
			count[num]++;
		}
		
		for(int i = 0 ; i < count.length ; i++) {
			bw.write(String.valueOf(count[i]) + "\n");
		}
		
		br.close();
		bw.flush();
		bw.close();
	}

}

 

반응형

댓글