[백준/JAVA] 2577번 숫자의 개수

HS JEON·2023년 9월 21일
0

codingTest

목록 보기
4/5

문제

  • 세 개의 자연수 A, B, C가 주어질 때 A × B × C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오.

  • 예를 들어 A = 150, B = 266, C = 427 이라면 A × B × C = 150 × 266 × 427 = 17037300 이 되고, 계산한 결과 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다

입력과 예시

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

출력

  • 3
    1
    0
    2
    0
    0
    0
    2
    0
    0
public class Main {
	
	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 num = 1;
		for(int i=0; i<3;i++) { //주어진 3개의 자연수 곱셈 결과
			num *=  Integer.parseInt(br.readLine());
		}
		
		int[] arr = new int[10]; //0~9까지의 숫자 배열
        //곱셈 결과의 반복문 용도
		int numLength = Integer.toString(num).length(); 
		char ch = ' ';
		for (int j = 0; j < numLength; j++) {
			ch = Integer.toString(num).charAt(j);
            //각 자리의 0과 차이를 계산 후, 배열에 누적
			arr[ch-48] += 1; 
		}
		
        //결과 값 출력 과정
		for(int k=0; k<10; k++) {
			bw.write(Integer.toString(arr[k]));
			bw.newLine();
		}
		bw.flush();
		
		bw.close(); br.close();
	}
}

0개의 댓글