8658. Summation D3
의석이는 종강 기념 피자 파티를 열기 위해서 피자를 사러 왔다.
하지만 피자 가게 주인 동욱이는 피자를 순순히 판매하지 않는 사람이다.
돈 보다 문제 내는 것을 더 좋아하는 이상한 동욱이는 피자를 사러 온 의석이에게 3개의 시련을 부여했고, 모두 통과해야만 거래를 시작한다.
첫 번째 관문에서는 10개의 자연수가 주어진다.
각 수마다 그 수의 각 자리 수를 다 더한 값을 계산해야 한다.
예를 들어서 주어진 수 중에 1203이 있다면 이 수의 각 자리 수를 모두 더하면 1 + 2 + 0 + 3 = 6이 된다.
의석이는 동욱이에게 받은 10개의 숫자들 중, 위와 같이 변환했을 때의 최대, 최소값을 대답해야만 한다.
의석이를 도와서 관문 1의 정답을 구하는 프로그램을 작성하라.
[입력]
첫 번째 줄에 테스트 케이스의 수 T가 주어진다.
각 테스트 케이스의 첫 번째 줄에는 자연수 10개가 공백으로 구분되어 주어진다.
모든 자연수는 1이상 1,000,000이하이다.
[출력]
각 테스트 케이스마다 ‘#x’(x는 테스트케이스 번호를 의미하며 1부터 시작한다)를 출력하고,
각 테스트 케이스마다 주어진 10개의 숫자들 각각을 위와 같이 변환했을 때에 구해지는 최대값과 최소값을 공백으로 구분하여 출력하라.
입력
| 2 182 371 29 49 28 21 928 11 5 1 13 400 3010 2011 1111 40 4 103 301 100111 |
// 테스트 케이스 개수 // 첫 번째 테스트 케이스 // 두 번째 테스트 케이스 |
출력
| #1 19 1 #2 4 4 |
// 첫 번째 테스트 케이스 결과 // 두 번째 테스트 케이스 결과 |
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Solution {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
for (int i = 1; i <= T; i++) {
int maxVal = 0;
int minVal = 0;
String A[]=new String[10];
StringTokenizer st = new StringTokenizer(br.readLine());
for (int j = 0; j < 10; j++) {
A[j] = st.nextToken();
}
int B[]=new int[10];
for (int k = 0; k < 10; k++) {
for(int l=0; l<A[k].length(); l++) {
B[k]+=(int)(A[k].charAt(l))-48;
}
}
maxVal = B[0];
minVal = B[0];
for (int m = 1; m < 10; m++) {
if (B[m] > maxVal) {
maxVal = B[m];
}
if (B[m] < minVal) {
minVal = B[m];
}
}
System.out.println("#"+i+" "+maxVal+" "+minVal);
}
br.close();
}
}'SWEA(SWExpertacAdemy)' 카테고리의 다른 글
| [SWEA] 5601. [Professional] 쥬스 나누기 (자바) (0) | 2025.05.12 |
|---|---|
| [SEWA] 5431. 민석이의 과제 체크하기 (자바) (0) | 2025.05.12 |
| [SWEA] 1215. [S/W 문제해결 기본] 3일차 - 회문1 (자바/JAVA) (0) | 2025.05.12 |
| [SWEA] 13229. 일요일 (자바/JAVA) (0) | 2025.05.09 |
| [SWEA] 7728. 다양성 측정 (자바/JAVA) (0) | 2025.05.09 |