백준 알고리즘/Lang-node.js
[백준/node.js] 18411번 試験 (Exam)
Jongung
2022. 4. 12. 16:01
https://www.acmicpc.net/problem/18411
18411번: 試験 (Exam)
JOI 君は情報の試験を 3 回受けた.試験の点数はすべて 0 以上 100 以下の整数である. JOI 君の成績は 3 回の試験の点数のうち高い方から 2 つを足し合わせた合計によって決まる. 3 回
www.acmicpc.net
- 사용언어 : node.js
- 알고리즘 : 수학, 구현 ,사칙연산
- Solved.ac Tier : Bronze IV
node.js 코드
1. 문제 정리
중국어로 되어있는 문제이다. JOI 예선에서 아마 제일 쉬웠던 문제였을 것으로 추정된다. 입력 3개 a, b, c를 입력 받아 그 중 큰 2개의 수를 더해 출력해주면 되는 간단한 문제이다.
다음과 같은 입력에선 친절하게도 90 + 80을 해주면 된다고 나와 있다.
나같은 경우는 가장 입력을 배열로 받아 3개중 가장 큰 수를 spread 연산자와 max 함수로 받아 오고 그 수를 배열 에서 제거 하고 다시 한번 더 돌려서 1번째 큰 수 + 2번째 큰 수를 해결 해 주었다.
2. 완성 코드
const filePath = process.platform === 'linux' ? '/dev/stdin' : '../ans.txt';
let input = require('fs').readFileSync(filePath).toString().trim().split(" ").map((e)=>+e);
let max = Math.max(...input);
let index = input.indexOf(max);
input.splice(index, 1);
console.log(max + Math.max(...input))

질문 또는 코드 리뷰는 댓글로 부탁드립니다!