728x90
반응형

백준알고리즘

- Bronze 4 -

 #11948. 과목선택 by JAVA and node.js 

 


 

문제

출처: https://www.acmicpc.net/problem/11948 

 


 

접근 방법

과학과목(물화생지) 점수를 배열에 담아 저장하고 Arrays.sort()를 이용해 오름차순으로 정렬한다.

역사와 지리 값 중 큰 값을 하나 택한 뒤 변수 하나에 저장하고 과학과목 배열 중 뒤에서 세 개를 합산하면 된다.

 


 

풀이

▶ JAVA

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int[] science = new int[4]; // 과학점수용 배열 선언 및 초기화

        for(int i=0; i<science.length; i++) {
            science[i] = scan.nextInt(); // 물,화,생,지 점수 저장
        }
        int history = scan.nextInt(); // 역사 점수 저장
        int map = scan.nextInt(); // 지리 점수 저장
        scan.close();

        Arrays.sort(science); // 과학점수 오름차순 정렬
        int result = (history < map ? map : history); // 역사와 지리 중 큰 값을 result에 저장

        for(int i=1; i<science.length; i++) {
            result += science[i]; // 과학점수 중 상위 3개점수를 result에 합산
        }
        System.out.println(result);
    }
}

 

▶ node.js

var fs = require('fs');
var input = fs.readFileSync('/dev/stdin').toString().trim().split('\n').map(v => +v);

var science = [];
for(var i=0; i<4; i++){
    science[i] = input[i];
}
science.sort((a,b)=>a-b);

var result = input[4] < input[5] ? input[5] : input[4];
for(var i=1; i<science.length; i++){
    result += science[i];
}
console.log(result);

 


 

결과

 


 

 

 

 

 

End.

heisely's 괴발개발 개발일지

 

728x90
반응형

+ Recent posts