문제
- 세 개의 자연수 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보다 작은 자연수이다.
출력
- 첫째 줄에는 A × B × C의 결과에 0 이 몇 번 쓰였는지 출력한다. 마찬가지로 둘째 줄부터 열 번째 줄까지 A × B × C의 결과에 1부터 9까지의 숫자가 각각 몇 번 쓰였는지 차례로 한 줄에 하나씩 출력한다.
입출력 예제
설명
- 입력받은 숫자를 곱한 결과를 차례대로 확인하며 배열에 count를 올려준다.
- String을 자를때 charAt()의 결과 - '0'을 하게되면 실제 숫자가 나오게 되고, 해당 숫자에 맞는 index에 count를 올려준다. (아스키코드 참고)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
package level05;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Level05_03 {
// 2577번 - 숫자의 개수
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuffer sb = new StringBuffer();
String result = String.valueOf((Integer.parseInt(br.readLine()) * Integer.parseInt(br.readLine()) * Integer.parseInt(br.readLine())));
int [] countArray = new int[10];
for(int i=0; i<result.length(); i++) countArray[result.charAt(i)-'0']++;
for(int num : countArray) sb.append(num+"\n");
System.out.println(sb.toString());
}
}
|
cs |
'Algorithm > Baekjoon' 카테고리의 다른 글
백준(8958번) - OX퀴즈 (0) | 2021.07.12 |
---|---|
백준(1546번) 평균 (0) | 2021.07.10 |
백준(2562번) - 최댓값 (0) | 2021.07.07 |
백준(10818번) 최소,최대 (0) | 2021.07.07 |
백준(1110번) 더하기 사이클 (0) | 2021.07.06 |