백준 세 수

KIMYEONGJUN·2025년 1월 7일
0
post-thumbnail

문제

내가 생각했을때 문제에서 원하는부분

첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100)

두 번째로 큰 정수를 출력한다.

내가 이 문제를 보고 생각해본 부분

BufferedReader를 사용하여 표준 입력(콘솔)에서 한 줄의 데이터를 읽는다.
StringTokenizer를 통해 입력된 문자열을 공백을 기준으로 분리해준다.
정수 변환:
nextToken() 메서드를 사용하여 분리된 문자열을 하나씩 읽고, 이를 정수로 변환하여 A, B, C 변수에 저장한다.
두 번째로 큰 수 찾기:
findSecondLargest 메서드를 호출하여 A, B, C 세 정수 중 두 번째로 큰 수를 찾는다.
찾은 두 번째로 큰 수를 출력해준다.
두 번째로 큰 수 찾는 메서드:
findSecondLargest 메서드는 세 개의 정수를 배열에 담고, Arrays.sort를 사용하여 배열을 오름차순으로 정렬해준다.
정렬된 배열에서 두 번째 요소인 nums[1]를 반환하여 두 번째로 큰 수를 찾는다.

코드로 구현

package baekjoon.baekjoon_25;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

// 백준 10817번 문제
public class Main893 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int A = Integer.parseInt(st.nextToken()); // A 정수
        int B = Integer.parseInt(st.nextToken()); // B 정수
        int C = Integer.parseInt(st.nextToken()); // C 정수

        // 두 번째로 큰수 찾기
        int secondLargest = findSecondLargest(A, B, C);
        System.out.println(secondLargest);
        br.close();
    }

    static int findSecondLargest(int A, int B, int C) {
        int[] nums = {A, B, C}; // A, B, C를 배열에 담기
        Arrays.sort(nums); // 정렬
        return nums[1]; // 두 번째로 큰 수 반환
    }
}

마무리

코드와 설명이 부족할수 있습니다. 코드를 보시고 문제가 있거나 코드 개선이 필요한 부분이 있다면 댓글로 말해주시면 감사한 마음으로 참고해 코드를 수정 하겠습니다.

profile
Junior backend developer

0개의 댓글

관련 채용 정보