2581번은 이전문제인 소수 찾기에서 응용을해서 풀어보았습니다.
const fs = require("fs");
const input = fs
.readFileSync("inp.txt")
.toString()
.trim()
.split("\n")
.map((num) => Number(num));
// let input = fs.readFileSync('/dev/stdin').toString().split(' ');
let startNum = input[0];
let endNum = input[1];
let arr = [];
let sum = 0;
outer: for (let i = startNum; i <= endNum; i++) {
if (i === 1) {
continue;
}
inner: for (let j = 2; j * j <= i; j++) {
if (i % j === 0) {
continue outer;
}
}
arr.push(i); //입력값 범위내의 소수 찾고 빈배열안에 넣기
}
if (arr.length === 0) {
console.log(-1); //만약 없을경우 -1
} else {
for (let i = 0; i < arr.length; i++) {
sum = sum + arr[i]; //배열안의 합
}
console.log(sum);
console.log(Math.min(...arr)); //배열안의 최솟값
}
풀면서 break를 어떻게 걸어야 할지 고민하다
inner outer 라는 것을 알게되었습니다.