아, 문자열이랑 비슷하게 int형에도 split을 써서 배열로 만들 수 있지 않을까?
라고 생각했다.
안됨 이슈^^
import java.io.*;
import java.util.*;
public class s5_1427 {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String n = br.readLine();
int[] arr = new int[n.length()];
for(int i=0;i<n.length();i++){
arr[i] = n.charAt(i) - '0';
}
Arrays.sort(arr);
//내림차순 핵심포인트 코드!!
for(int i=0;i<arr.length/2;i++){
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i]=temp;
}
for(int num:arr){
System.out.print(num);
}
}
}
일단 입력받을때 string으로 받아주고 시작한다.
int형 빈 배열을 만들어주고 for문으로 하나하나 정수형으로 만들어 넣어줘야한다!
그다음 정렬 sort하면 오름차순 정렬이 된다.
내림차순 어케하는지 찾아보다가 아래와 같이 배열을 반으로 쪼개서 바꿔치기하는 코드를 짰다.
출력은 첨에 int i=0;i<arr.length;i++
로 하다가 int num:arr
로 짧게 쓰는 코드를 봐버려서 가져왔다. 하나 배움 ㅎㅎ
안녕하세요 syeony님! 글 잘 보았습니다. 문제 푸느라 고생많으셨어요! 그 혹시 백준에서 푼 문제를 손쉽게 복습하거나 아카이빙하고 싶지 않으신가요? https://mycodingtest.com 에서 복습,아카이빙, 소팅, 태깅 등을 지원해드려요! 제 개인 프로젝트인데 백준푸시는 분들께 이렇게 댓글로 홍보하고있답니다. 😀 이용해주시면 정말 감사드려요! 코테 실력을늘리는데 도움이 되실거에요!