티스토리 뷰

728x90

문제 링크

https://www.acmicpc.net/problem/21866

 

21866번: 추첨을 통해 커피를 받자

첫 번째 줄에 9개의 정수가 주어진다. 각 정수는 $0$ 이상 $1\,000$ 이하의 정수다. 각 정수는 해당 학생이 각 문제에서 얻은 점수를 의미한다.

www.acmicpc.net

 

풀이

1) 점수의 합을 구해줍니다.
2) 최대 점수를 넘는 문제가 있는지 확인해줍니다.
3) 주어진 조건에 따라 정답을 출력합시다.

정답 코드

const fs = require('fs');
const stdin = fs.readFileSync('/dev/stdin').toString().split('\n');
const input = (() => {
    let line = 0;
    return () => stdin[line++];
})();

const main = function () { 
    const p = input().split(' ').map(Number); 
    const max = [100, 100, 200, 200, 300, 300, 400, 400, 500]; 
    const sum = p.reduce((sum, v) => sum + v, 0) 
    const hacked = p.reduce((h, v, i) => (v > max[i] ? true : h), false); 
    
    let ans; 
    if (hacked) ans = 'hacker'; 
    else if (sum >= 100) ans = 'draw'; 
    else ans = 'none'; 
    
    console.log(ans); 
}; 

main();
728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함