[백준/Java] 2562번 최댓값 (1차원 배열)

[백준/Java] 2562번 최댓값 (1차원 배열)
muaga's avatar
Jun 23, 2024
[백준/Java] 2562번 최댓값 (1차원 배열)
 

문제


9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.

입력


첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.

출력


첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.
입력
출력
3 29 38 12 57 74 40 85 61
85 8
 


◽Scanner

import java.util.Arrays; import java.util.Scanner; import java.util.stream.Collectors; public class ScannerJava { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] a = new int[9]; for (int c = 0; c < 9; c++) { int number = sc.nextInt(); a[c] = number; } int max = Arrays.stream(a).max().getAsInt(); int idx = Arrays.stream(a).boxed().collect(Collectors.toList()).indexOf(max) + 1; // Arrays.stream : IntStream 생성(기본형 스트림) // boxed : Stream<Integer>로 변환 (기본형 스트림 -> 참조형 스트림) // collectors.toList() : List<Integer>로 변환 // indexOf(max) + 1; // max의 인덱스 + 1을 하여 자릿수 위치 찾 System.out.println(max); System.out.println(idx); sc.close(); } }

◽ BufferedReader / BufferedWriter

import java.io.*; import java.util.Arrays; import java.util.StringTokenizer; import java.util.stream.Collectors; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int[] a = new int[9]; for (int i = 0; i < 9; i++) { a[i] = Integer.parseInt(br.readLine()); } int max = Arrays.stream(a).max().getAsInt(); int idx = Arrays.stream(a).boxed().collect(Collectors.toList()).indexOf(max) + 1; bw.write(max + "\n"); bw.write(idx + "\n"); br.close(); bw.flush(); bw.close(); } }
Share article

muaga's Hub