From 76d11f803722d7d2eb9e6b519a3e78aa8628b08a Mon Sep 17 00:00:00 2001 From: Cheshire Date: Tue, 7 May 2024 09:05:25 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20PGMS=5F=EA=B0=80=EC=9E=A5=ED=81=B0?= =?UTF-8?q?=EC=88=98=20=EC=95=8C=EA=B3=A0=EB=A6=AC=EC=A6=98=20=EA=B5=AC?= =?UTF-8?q?=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\354\265\234\354\204\234\355\230\204.java" | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 "4\354\243\274\354\260\250/\352\260\200\354\236\245\355\201\260\354\210\230/\352\260\200\354\236\245\355\201\260\354\210\230_\354\265\234\354\204\234\355\230\204.java" diff --git "a/4\354\243\274\354\260\250/\352\260\200\354\236\245\355\201\260\354\210\230/\352\260\200\354\236\245\355\201\260\354\210\230_\354\265\234\354\204\234\355\230\204.java" "b/4\354\243\274\354\260\250/\352\260\200\354\236\245\355\201\260\354\210\230/\352\260\200\354\236\245\355\201\260\354\210\230_\354\265\234\354\204\234\355\230\204.java" new file mode 100644 index 0000000..df2a3d2 --- /dev/null +++ "b/4\354\243\274\354\260\250/\352\260\200\354\236\245\355\201\260\354\210\230/\352\260\200\354\236\245\355\201\260\354\210\230_\354\265\234\354\204\234\355\230\204.java" @@ -0,0 +1,35 @@ +/** 가장 큰 수 +* 0 또는 양의정수 주어졌을때 이어붙여서 만들수있는 가장 큰 수 구하기 +* input : numbers[] 배열 +* output : String +* 풀이 : 숫자가 큰것부터 선택해야됨 +* CompareTo를 구현하여 두 숫자를 이어 붙였을때 큰 수가 되는걸 선택하면 된다. +* +* 구현 안하고 사전순으로 만든뒤 삽입정렬하며 예외처리 하려했다가 머리터짐..ㅜ;; +*/ +import java.util.*; +class Solution { + public String solution(int[] numbers) { + //1. int를 String으로 전환 + String[] arr = new String[numbers.length]; + for(int i=0; i(){ + @Override + public int compare(String a, String b){ + return (b+a).compareTo(a+b); + } + }); + + + //3. 예외처리 + if(arr[0].equals("0")) return "0"; + + String answer = ""; + for(String str : arr) answer+=str; + return answer; + } +}