https://programmers.co.kr/learn/courses/30/lessons/12933
< ์ ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ >
โ ๋ด๊ฐ ํ์ด๋ณธ ํ์ด
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import java.util.*;
class Solution {
public long solution(long n) {
long answer;
String n_temp="";
n_temp+=n;
char[] nc_temp = n_temp.toCharArray();
Arrays.sort(nc_temp);
n_temp="";
for(int i =nc_temp.length-1 ; i>=0 ;i--){
n_temp+=nc_temp[i];
}
answer= Long.parseLong(n_temp);
return answer;
}
}
|
cs |
์๊ฐ๊ณผ์ )
1. long ํํ์ n ์ ์๋ฆฟ์๋ฅผ ํ๋ํ๋ ๋์ด ์ค์ผํ๋ค →String์ผ๋ก ๋ณํ
2. ์ ๋ ฌ ํด์ผํ๊ธฐ ๋๋ฌธ์ String ์ char[]๋ก ๋ณํ
3. ์ ๋ ฌ ( ?? ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ ๋ฒ์ ๋ญ์ง?)
4. ์ ๋ ฌํ ๋ค์ ๋ค์ ๊ฐ๋ถํฐ ๋ํด์ String์ผ๋ก ๋ณํ
5. String ํํ์ n_temp๋ฅผ Long.parseLong()๋ก Longํ์ผ๋ก ๋ณํ ( โป ๋งจ์ฒ์ Integer.parseInt()๋ก ํ๋ค๊ฐ ์คํจ๊ฐ ๋ด๋ค )
→ ์ค๊ฐ์ n_temp์ ์ด๋ฏธ ๋ฌธ์์ด์ด ๋ค์ด ์์ผ๋ฏ๋ก n_temp=""; ํด์ค์ด์ผํ๋ค.
โ ์ฐธ๊ณ ํ ํ์ด & ์๊ฐ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import java.util.Arrays;
public class ReverseInt {
public int reverseInt(int n){
String str = Integer.toString(n);
char[] c = str.toCharArray();
Arrays.sort(c);
StringBuilder sb = new StringBuilder(new String(c,0,c.length));
return Integer.parseInt(((sb.reverse()).toString()));
}
// ์๋๋ ํ
์คํธ๋ก ์ถ๋ ฅํด ๋ณด๊ธฐ ์ํ ์ฝ๋์
๋๋ค.
public static void main(String[] args){
ReverseInt ri = new ReverseInt();
System.out.println(ri.reverseInt(118372));
}
}
|
cs |
1
2
3
4
5
6
7
8
|
//toCharArray
String arr[]=String.valueOf(n).split("");
//์ญ์์ ๋ ฌ
Arrays.sort(arr, Collections.reverseOrder());
|
cs |