int max = -99999, min = 99999;
와 같이 변수 선언 및 초기화를 한 후
for (int i = 0; i < arr.length; i++) {
if (arr[i] >= max) {
max = arr[i];
}
if (arr[i] <= min) {
min = arr[i];
}
이런 식으로 값을 비교하며 일일히 max와 min 변수에 넣어주고 뽑으려 함. 전체 코드는 이런식
import java.util.Scanner;
public class Home {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int max = -99999, min = 99999;
int num = sc.nextInt();
int arr[] = new int[num];
for (int i = 0; i < arr.length; i++) {
arr[i] = sc.nextInt();
}
for (int i = 0; i < arr.length; i++) {
if (arr[i] >= max) {
max = arr[i];
}
if (arr[i] <= min) {
min = arr[i];
}
}
System.out.println(min + " " + max);
}
}
이 방법은 백준에서 오답처리 되었다. 예제를 넣었을 때는 잘 작동하는 것 같았는데 채점이 90%대로 넘어가면서 오답처리가 되었다..
Array를 import 해준 뒤, sort를 사용해 작은 수 -> 큰 수로 정렬된 배열에서 max와 min 값을 뽑아준다
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int arr[] = new int[num];
// 배열의 길이만큼 돌면서 i에 입력값을 받는다
for (int i=0; i<arr.length; i++) {
arr[i] = sc.nextInt();
}
// sort를 사용해 배열을 정렬한다
Arrays.sort(arr);
// 정렬된 배열의 가장 작은 수
// 0번 인덱스의 것 = min 값
// 배열길이 -1 인덱스의 것 = max 값
System.out.println(arr[0] + " " + arr[num - 1]);
}
}
Arrays.sort() = 배열에 저장된 원소 값을 오름차순으로 정렬해주는 것