반응형
[1] 백준 카테고리
단계별로 풀어보기
1차원 배열
3단계 2577번 문제
숫자의 개수
링크
https://www.acmicpc.net/problem/2577
[2] 문제
1. 입력
세 개의 자연수 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번 쓰였다.2. 출력
3. 예제 입력 1
첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다.
4.예제 출력 1
첫째 줄에는 A × B × C의 결과에 0 이 몇 번 쓰였는지 출력한다. 마찬가지로 둘째 줄부터 열 번째 줄까지 A × B × C의 결과에 1부터 9까지의 숫자가 각각 몇 번 쓰였는지 차례로 한 줄에 하나씩 출력한다.
5. 예제 입력 1
150
266
427
6. 예제 출력 1
3
1
0
2
0
0
0
2
0
0
[3] 정답
1. 정답 해설 포함
import java.util.Scanner;
//Scanner 사용을 위해서 java.util.Scanner 클래스를 import
public class Main{
// 접근제어자 public으로 Main class를 선언
public static void main(String args[]) {
/* 접근제어자 public, 메모리에 상주하게, 반환값이 없이
main 함수를 선언 */
Scanner sc = new Scanner(System.in);
// Scanner 객체 sc 선언
int a = sc.nextInt();
// 변수 a를 선언하고 값을 입력받아 변수 a에 저장
int b = sc.nextInt();
// 변수 b를 선언하고 값을 입력받아 변수 b에 저장
int c = sc.nextInt();
// 변수 c를 선언하고 값을 입력받아 변수 c에 저장
sc.close();
// 객체 sc 사용을 종료
int[] counts = new int[10];
// 배열 counts를 선언 범위는 count[0]~count[9]이다.
int t = a * b * c;
// a * b * c를 연산하고 그 값을 int형 변수 t에 저장
while (t > 0) {
// while문 선언 t>0 일때 내부의 코드를 반복
counts[t % 10]++;
// count[t%10]에 1를 더한다
t /= 10;
// t나누기 10 값을 변수 t에 저장
}
for (int i=0; i < counts.length; ++i) {
// for 문 선언
System.out.println(counts[i]);
// counts[i]를 출력하고 개행
}
}
}
2. 정답 해설 미포함
import java.util.Scanner;
public class Main{
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
sc.close();
int[] counts = new int[10];
int t = a * b * c;
while (t > 0) {
counts[t % 10]++;
t /= 10;
}
for (int i=0; i < counts.length; ++i) {
System.out.println(counts[i]);
}
}
}
반응형
'프로그래밍 > 백준 문제 풀이(자바)' 카테고리의 다른 글
백준 평균 문제 자바 답/해설(1546번 문제) (0) | 2021.11.07 |
---|---|
백준 자바 나머지 답/해설(3052번 문제) (0) | 2021.11.03 |
백준 자바 최댓값 답/해설(2562번 문제) (0) | 2021.10.22 |
백준 자바 최소, 최대 문제 답/해설(10818번 문제) (0) | 2021.10.19 |
백준 자바 더하기 사이클 답/해설(1110번 문제) (0) | 2021.10.18 |