반응형
https://www.acmicpc.net/problem/2562
문제 해설
서로 다른 9개의 자연수이닌깐 크기가 9인 배열을 생성하고 값을 배열에 담은 후 최댓값을 찾는다.
시도해보자.
해결 방법
package number_2562;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main{
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int[] num = new int[9]; // 크기가 9인 배열 생성
for(int i = 0 ; i < 9 ; i++) {
num[i] = Integer.parseInt(br.readLine()); // 9개의 자연수를 입력 받아서 배열에 저장
}
int before_num = num[0]; // 이전 자연수 저장
int result = 0; // 최댓값의 인덱스 저장
for(int i = 0 ; i < num.length ; i++) {
if(before_num < num[i]) { // 이전 숫자보다 크면
result = i; // 인덱스 저장
}
before_num = num[i];
}
bw.write(num[result] + "\n" + (result + 1));
br.close();
bw.flush();
bw.close();
}
}
결과는 실패
결과값은 정상으로 나오는데 뭐가 틀린거지...
아하 테스트 결과 첫번째 인덱스의 숫자가 최댓값일때 출력이 되지 않는 것을 발견했다.
멍청하게 했네ㅋㅋㅋㅋ
최댓값을 맥스에 저장하고 그 맥스값과 다음 배열 숫자를 비교해야하는데 그냥 이전숫자만 비교하고 있었다.
수정된 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main{
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[] num = new int[9];
for(int i = 0 ; i < 9 ; i++) {
num[i] = Integer.parseInt(br.readLine());
}
int max = 0;
int result = 0;
for(int i = 0 ; i < num.length ; i++) {
if(max < num[i]) {
max = num[i];
result = i;
}
}
bw.write(max + "\n" + (result + 1));
br.close();
bw.flush();
bw.close();
}
}
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준 알고리즘][자바] 4344번 : 평균은 넘겠지 (0) | 2021.03.04 |
---|---|
[백준 알고리즘][자바] 1546번 : 평균 (0) | 2021.03.04 |
[백준 알고리즘][자바] 10818번 : 최소, 최대 (0) | 2021.01.19 |
[백준 알고리즘][자바] 1110번 : 더하기 사이클 (0) | 2021.01.14 |
[백준 알고리즘][자바] 10951번 : A+B - 4 (0) | 2021.01.10 |
댓글