728x90
난이도가 브론즈2인 문제입니다.
9개의 자연수가 주어지고(입력받고) 입력 받은 숫자중 가장 높은수를 출력하고 해당 숫자가 몇번째 숫자인지까지 뽑아내는 문제네요!
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 = new int [9];
int[] tmp = new int [9];
for(int i = 0; i < num.length; i++) {
num[i] = sc.nextInt();
tmp[i] = num[i];
}
Arrays.sort(num);
System.out.println(num[8]);
for(int i=0; i < num.length; i++) {
if(tmp[i] == num[8]) {
System.out.println(i+1);
}
}
}
}
제가 문제를 푼 로직은 9칸짜리 배열을 만들어 놓고 하나는 가장 높은수를 뽑아내기 위한 배열 하나는 index를 뽑아내기 위한 배열로 만들었네요!
정렬된 배열에서 가장 뒤의 인덱스의 숫자가 가장 큰 숫자일거고 index를 뽑아내기 위한 배열 tmp에서 해당 숫자의 인덱스를 뽑아내주면 됩니다!
728x90
'알고리즘 > 백준(backjoon)' 카테고리의 다른 글
[Baekjoon]백준 NO.3052 나머지(브론즈2) / Java(자바) (0) | 2021.07.14 |
---|---|
[Baekjoon]백준 NO.2577 숫자의 개수 / Java(자바) (0) | 2021.07.11 |
[Baekjoon]백준 NO.10818 최소, 최대 / Java(자바) (0) | 2021.07.09 |
[Baekjoon]백준 NO.1110 더하기 사이클 / Java(자바) (0) | 2021.07.02 |
[Baekjoon]백준 NO.10951 A+B-4 / Java(자바) (0) | 2021.06.30 |