본문 바로가기
Problem Solving/SWEA

[SWEA] 8658. Summation

by 테리는당근을좋아해 2020. 2. 25.

문제

의석이는 종강 기념 피자 파티를 열기 위해서 피자를 사러 왔다.

하지만 피자 가게 주인 동욱이는 피자를 순순히 판매하지 않는 사람이다.

돈 보다 문제 내는 것을 더 좋아하는 이상한 동욱이는 피자를 사러 온 의석이에게 3개의 시련을 부여했고, 모두 통과해야만 거래를 시작한다.

첫 번째 관문에서는 10개의 자연수가 주어진다.

각 수마다 그 수의 각 자리 수를 다 더한 값을 계산해야 한다.

예를 들어서 주어진 수 중에 1203이 있다면 이 수의 각 자리 수를 모두 더하면 1 + 2 + 0 + 3 = 6이 된다.

의석이는 동욱이에게 받은 10개의 숫자들 중, 위와 같이 변환했을 때의 최대, 최소값을 대답해야만 한다.

의석이를 도와서 관문 1의 정답을 구하는 프로그램을 작성하라.

 

풀이방법

완전탐색으로 10개의 자연수의 각 자리수의 합을 구하고 이 중 최소값과 최대값을 찾는다.

 

소스코드

package samsung;

import java.util.*;

public class s_8658 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int test = sc.nextInt();
		
		for(int t = 1; t <= test; t++) {
			int[] a = new int[10];
			int max = 0;
			int min = 9999999;
			
			
			for(int i = 0; i < 10; i++) {
				a[i] = sc.nextInt();
				String s = String.valueOf(a[i]);
				int sum = 0;
				for(int j = 0; j < s.length(); j++) {
					sum += s.charAt(j) - '0';
				}
				max = Math.max(max, sum);
				min = Math.min(min, sum);
			} 
			System.out.println("#" + t + " " + max + " " + min);

		}
	}
}

 

출처

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AW1lwyh6WPwDFARC&categoryId=AW1lwyh6WPwDFARC&categoryType=CODE

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

댓글