๊ฐ์ธ๊ณต๋ถ/Algorithm
[๋ฐฑ์ค][Node.js] 10610๋ฒ : 30
๐๋ฐ๋ด๋ด๐
2022. 1. 24. 23:09
Algorithm
- 30 -
๋ฌธ์
์ด๋ ๋ , ๋ฏธ๋ฅด์ฝ๋ ์ฐ์ฐํ ๊ธธ๊ฑฐ๋ฆฌ์์ ์์ N์ ๋ณด์๋ค. ๋ฏธ๋ฅด์ฝ๋ 30์ด๋ ์๋ฅผ ์กด๊ฒฝํ๊ธฐ ๋๋ฌธ์, ๊ทธ๋ ๊ธธ๊ฑฐ๋ฆฌ์์ ์ฐพ์ ์์ ํฌํจ๋ ์ซ์๋ค์ ์์ด 30์ ๋ฐฐ์๊ฐ ๋๋ ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ง๋ค๊ณ ์ถ์ดํ๋ค.
๋ฏธ๋ฅด์ฝ๋ฅผ ๋์ ๊ทธ๊ฐ ๋ง๋ค๊ณ ์ถ์ดํ๋ ์๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ.
์ ์ถ๋ ฅ ์์
๋ฌธ์ ํ๊ธฐ
let fs = require("fs");
let input = fs.readFileSync("/dev/stdin")
.toString()
.trim()
.split("")
.map((el) => Number(el));
// STEP01. ์ผ์ ์๋ฆฌ๊ฐ 0์ด ๋์ง ์๋๋ค๋ฉด 30์ ๋ฐฐ์๊ฐ ์๋๋ค
if (!input.includes(0)) {
console.log(-1);
return;
} else {
let sum = input.reduce((past, curr) => past + curr, 0);
// STEP02. ๊ฐ ์๋ฆฌ์๋ฅผ ๋ชจ๋ ๋ํ๊ณ 3์ผ๋ก ๋๋๋ ๋๋์ด ๋จ์ด์ง์ง ์์ผ๋ฉด 3์ ๋ฐฐ์๊ฐ ์๋๋ค
if (sum % 3 !== 0) {
console.log(-1);
return;
}
// STEP03. ๊ฐ์ฅ ํฐ 30์ ๋ฐฐ์ ๋ง๋ค๊ธฐ
input.sort((a, b) => b - a);
console.log(input.join(""));
return;
}
๋ฐ์ํ