알고리즘/프로그래머스

[2단계] 가장 큰 수

hongeeii 2023. 12. 5.
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
반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[Kotlin] 튜플  (0) 2024.01.17
[Kotlin] 다리를 지나는 트럭  (0) 2024.01.17
[Kotlin] 의상  (1) 2024.01.08
[2단계] N개의 최소공배수  (0) 2023.12.19
[2단계] KAKAO BLINE RECRUITMENT - 캐시  (0) 2023.12.04

추천 글