[백준/BOJ] 14215번 세 막대 [Javascript / Node js]
2023. 9. 6. 21:45ㆍ코딩 테스트 (BOJ)
14215번: 세 막대
첫째 줄에 a, b, c (1 ≤ a, b, c ≤ 100)가 주어진다.
www.acmicpc.net

문제해설
삼각형이 되기 위해서는 가장 큰 변의 길이가 나머지 두 변의 길이의 합을 넘지 않아야 한다.
그러니 먼저 삼각형의 가장 길이가 긴 변을 찾고,
(모든 변의 길이의 합 - 가장 큰 변의 길이) 은 가장 큰 변을 제외한 나머지 두 변의 길이의 합이니,
두 변의 길이의 합이 가장 큰 변의 길이보다 짧다면 가장 큰 변의 길이를 (모든 변의 길이의 합 - 가장 큰 변의 길이) - 1 만큼 줄여주면 삼각형으로 만들 수 있다.
전체코드
const fs = require("fs");
var input = fs.readFileSync("/dev/stdin").toString().trim().split(" ");
input = input.map((item)=>Number(item));
var max = Math.max(...input);
var sum = input.reduce((acc, currentValue)=> acc + currentValue, 0);
if((sum - max) > max){
console.log(sum);
}else{
console.log((sum - max) * 2 - 1);
}
이번 문제를 풀면서 reduce 함수를 사용하는 법을 배웠다. 잊지 말아야지
'코딩 테스트 (BOJ)' 카테고리의 다른 글
[백준/BOJ] 24313번 알고리즘 수업 - 점근적 표기 1 (Node js/ Javascript) (0) | 2023.09.12 |
---|---|
[백준/BOJ] 24266번 알고리즘 수업 - 알고리즘의 수행 시간 5 (Javascript / Node js) (0) | 2023.09.09 |
[백준/BOJ] 3009번 네 번째 점 (Javascript / Node js) (0) | 2023.09.02 |
[백준/BOJ] 11653번 소인수분해 (Javascript / Node js) (0) | 2023.08.30 |
[백준/BOJ] 1978번 소수 찾기 (Javascript/Node js) (0) | 2023.08.29 |