본문 바로가기
CODING/BAEKJOON

[BAEKJOON] 2577번 숫자의 개수

by snow_white 2022. 1. 24.

입력 받은 수를 모두 곱하여 toString() 함수를 사용하여 문자열로 변환한다.

문자열에 0부터 9까지 몇 개씩 사용되어 있는지 카운트하는 문제이다.

크기가 10인 정수형 배열을 사용하여 카운트한 값을 저장한다. 

문자를 숫자로 변환하여 변환된 숫자에 해당하는 인덱스에 저장된 값을 누적시킨다.

초기 배열값을 모두 0인 점을 이용한다.

"1234"라면

arr[1]++;    → 1 카운트

arr[2]++;    → 1 카운트

arr[3]++;    → 1 카운트

arr[4]++;    → 1 카운트

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

public class Main {

	public static void main(String[] args) throws IOException{
		int arr[] = new int[10];
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int a = Integer.parseInt(br.readLine());
		int b = Integer.parseInt(br.readLine());
		int c = Integer.parseInt(br.readLine());
		
		int mul = a*b*c;
		String result = Integer.toString(mul);
		
		for(int i=0; i<result.length(); i++) {
			arr[Character.getNumericValue(result.charAt(i))]++;
		}
		for(int i=0; i<10; i++) {
			System.out.println(arr[i]);
		}
	}
}

[출처]

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

 

2167번: 2차원 배열의 합

첫째 줄에 배열의 크기 N, M(1 ≤ N, M ≤ 300)이 주어진다. 다음 N개의 줄에는 M개의 정수로 배열이 주어진다. 배열에 포함되어 있는 수는 절댓값이 10,000보다 작거나 같은 정수이다. 그 다음 줄에는

www.acmicpc.net

 

'CODING > BAEKJOON' 카테고리의 다른 글

[BAEKJOON] 2167번 2차원 배열의 합  (0) 2022.01.24
[BAEKJOON] 2851번 슈퍼 마리오  (0) 2022.01.24
[BAEKJOON] 8958번 OX퀴즈  (0) 2022.01.24
[BAEKJOON] 1152번 단어의 개수  (0) 2022.01.24
[BAEKJOON] 15596번 정수 N개의 합  (0) 2022.01.24

댓글