Programmers_level2_가장 큰 수

https://programmers.co.kr/learn/courses/30/lessons/42746

level2_가장 큰 수

import java.util.Comparator;
import java.util.PriorityQueue;

public class Solution_가장큰수 {
	public static void main(String[] args) {
//		int[] numbers = {6,12,2};
		int[] numbers = { 3, 30, 34, 5, 9 };
		System.out.println(solution(numbers));
	}

	static String solution(int[] numbers) {
		PriorityQueue<Integer> queue = new PriorityQueue<Integer>(new Comparator<Integer>() {
			@Override
			public int compare(Integer o1, Integer o2) {
				// TODO Auto-generated method stub
				String temp1 = String.valueOf(o1) + String.valueOf(o2);
				String temp2 = String.valueOf(o2) + String.valueOf(o1);
				if (Integer.parseInt(temp1) >= Integer.parseInt(temp2)) {
					return -1;
				}
				return 1;
			}
		});
		boolean isZero = true;
		for (int i : numbers) {
			if (i != 0) {
				isZero = false;
			}
			queue.offer(i);
		}
		if (isZero)
			return "0";
		String answer = "";
		while (!queue.isEmpty()) {
			answer += queue.poll();
		}
		return answer;
	}
}

© 2019. All rights reserved.

Powered by Hydejack v8.5.2