본문 바로가기

Coding Test/백준

백준 10817. 세 수

 

 

공유 소스 보기

 

www.acmicpc.net

 

문제

세 정수 A, B, C가 주어진다. 이때, 두 번째로 큰 정수를 출력하는 프로그램을 작성하시오.

 

입력

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

 

출력

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

 

 


 

내가 작성한 코드

import java.util.Scanner;
import java.util.Arrays; //오름차순 정렬 위해


public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
 
        //세 정수 a,b,c가 주어진다
        //이때, 두 번째로 큰 정수를 출력하는 프로그램 작성해보라
 
        //무식하게 값 비교하지말고, 
        //간단하게 배열 저장 후 오름차순 이용하여 2번째 수 출력하면 됨
        
        //배열 안에 바로 값을 입력 넣을 수 있더라
        int[] arr = {sc.nextInt(),sc.nextInt(),sc.nextInt()};

        //정렬
        Arrays.sort(arr);
        System.out.println(arr[1]);
    }
}

 

 

비교

import java.util.Scanner;

public class Main{
    
    static void swap(int[] a){
        int t = a[0];
        a[0] = a[1];
        a[1] = t;
    }
    public static void main(String[] args){
        Scanner sc = new Scanner (System.in);
        int a[] = new int[3];
        a[0] = sc.nextInt();
        a[1] = sc.nextInt();
        a[2] = sc.nextInt();
        
        if(a[0] > a[1]) swap(a); //무조건 a[0] < a[1] 되게 함
        
        if(a[2] < a[0]){
            System.out.println(a[0]);
        }else if(a[0] <= a[2] && a[2] < a[1]){
            System.out.println(a[2]);
        }else{
            System.out.println(a[1]);
        }
    }
}

'Coding Test > 백준' 카테고리의 다른 글

백준 10158. 개미  (0) 2021.03.11
백준 10250. ACM 호텔  (0) 2021.03.11
백준 10828. 스택  (0) 2021.03.11
백준 10873. 동전게임  (0) 2021.03.11
백준 13015. 별 찍기 - 23  (0) 2021.03.11