삐까냥의 파도타기

10610번) 30 - 그리디 본문

코딩/백준 알고리즘

10610번) 30 - 그리디

금손형아 2017. 10. 27. 01:12

문제 출처 : https://www.acmicpc.net/problem/10610



주의할점 : 입력된 숫자를 모두 사용해야 된다는 것.


이것만 주의하면 너무나 쉬운 문제입니다.


import java.util.Scanner;


public class Q10610 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

String number = sc.next();

int[] nums = new int[10];

int sum = 0;

for ( int i = 0; i < number.length(); i++ ) {

int temp = number.charAt(i)-48;

nums[temp] += 1;

sum += temp;

}

if ( nums[0] == 0 || sum % 3 != 0) {

System.out.println(-1);

} else {

StringBuffer result = new StringBuffer();

for ( int i = 9; i >= 0; i-- ) {

int max = nums[i];

for ( int j = 0; j < max; j++ ) {

result.append(i);

}

}

System.out.println(String.valueOf(result));

}

}

} 


'코딩 > 백준 알고리즘' 카테고리의 다른 글

1049번) 기타줄 - 그리디  (0) 2017.10.27
2875번) 대회 or 인턴 - 그리디  (0) 2017.10.27
2217번) 로프 - 그리디  (0) 2017.10.26
11399번) ATM - 그리디  (0) 2017.10.26
11053번) 가장 긴 증가하는 부분 수열  (0) 2017.10.11