알고리즘/프로그래머스

[2단계] 가장 큰 수

hongeeii 2023. 12. 5. 00:41
728x90
반응형

import java.util.Arrays;
import java.util.stream.Collectors;

public class Main {
	public static String solution(int[] numbers) {
		String collect = Arrays.stream(numbers).boxed().map(String::valueOf).sorted((s1, s2) -> {
			long el1 = Long.parseLong(s1 + s2);
			long el2 = Long.parseLong(s2 + s1);

			if (el1 > el2) {
				return -1;
			} else if (el2 > el1) {
				return 1;
			}

			return 0;
		}).collect(Collectors.joining());

		return removeZeroPrefix(collect);
	}

	private static String removeZeroPrefix(String str) {
		for (int i = 0; i < str.length(); i++) {
			if (str.charAt(i) - 48 != 0) {
				return str.substring(i);
			}
		}

		return "0";
	}
}
728x90
반응형