728x90
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
1. arr 배열 한 번만 선언
import java.util.Scanner;
class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for (int tc = 1; tc <= t; tc++) {
String num = sc.next();
int min = Integer.parseInt(num);
int max = Integer.parseInt(num);
char[] arr = num.toCharArray(); //같은 배열 쓰면서 계속 원복 시킴
for (int i = 0; i < num.length() - 1; i++) {
for (int j = i + 1; j < num.length(); j++) {
swap(i, j, arr);
if (arr[0] == '0') {
swap(i, j, arr);
continue;
}
max = Math.max(Integer.parseInt(new String(arr)), max);
min = Math.min(Integer.parseInt(new String(arr)), min);
swap(i, j, arr);
}
}
System.out.println("#" + tc + " " + min + " " + max);
}
}
public static void swap(int i, int j, char arr[]) {
char tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
2. arr 배열 여러 번 선언
import java.util.Scanner;
class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for (int tc = 1; tc <= t; tc++) {
String str = sc.next();
int max = Integer.parseInt(str);
int min = Integer.parseInt(str);
for (int i = 0; i < str.length() - 1; i++) {
for (int j = i + 1; j < str.length(); j++) {
char[] arr = str.toCharArray(); //배열 초기화함
swap(i, j, arr);
if(arr[0]=='0') continue; //바꿨는데 맨 앞이 0이면
max = Math.max(max, Integer.parseInt(new String(arr)));
min = Math.min(min, Integer.parseInt(new String(arr)));
}
}
System.out.println("#" + tc + " " + min + " " + max);
}
}
public static void swap(int i, int j, char arr[]) {
char tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}728x90
'SW Expert Academy > SWEA D3' 카테고리의 다른 글
| [SW Expert Academy] 아바바바 (D3) (0) | 2024.10.13 |
|---|---|
| [SW Expert Academy] 최대 상금 (D3) (1) | 2024.10.13 |
| [SW Expert Academy] 두 전구 (D3) (2) | 2024.10.13 |
| [SW Expert Academy] 홀수 피라미드 (D3) (1) | 2024.10.13 |
| [SW Expert Acacademy] 피보나치 수 분배 (D3) (0) | 2024.10.13 |