250x250
Notice
Recent Posts
Recent Comments
Link
\(@^0^@)/
[JS] ๋ฐฑ์ค 3052๋ฒ ๋๋จธ์ง ๋ณธ๋ฌธ
728x90
๐ฑ๐ 1. ๋ฌธ์ : 3052
https://www.acmicpc.net/problem/3052
๐ฅ 2.1 Set์ ์ด์ฉํ ํ์ด
const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
// ์
๋ ฅ๋ฐ์ ๋ฌธ์๋ฐฐ์ด์ ์ซ์๋ฐฐ์ด๋ก ๋ณํ, Num์ผ๋ก ๋ฐ๊ฟ์ผ ๊ณต๋ฐฑ์์ด ์ ๋๋ก ๋น๊ต ๊ฐ๋ฅ.
// trim()์ ์ ์ฉํด์ผ๋ง ๋ง์ง๋ง์ ๊ณต๋ฐฑ ''๊ฐ ์์.
let input = fs.readFileSync(file).toString().trim().split('\n').map(n => Number(n));
//[ 39, 40, 41, 0, 1, 2, 40, 41, 0, 1]
let arr = input.map((n) => n % 42);
// set ๋ฉ์๋๋ฅผ ์ด์ฉํด์ ์ค๋ณต๋ ์์๋ฅผ ์ ๊ฑฐ.
let set = new Set(arr);
// ์ค๋ณต๋์ง ์์ ์์๋ค๋ง ๋ฐ๋ก ๋ฐฐ์ด ์์ฑ.
let NotSameNum = [...set];
console.log(NotSameNum.length);
๐ฅ 2.1 for๋ฌธ์ ์ฌ์ฉํ ์ฝ๋
const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
// ์
๋ ฅ๋ฐ์ ๋ฌธ์๋ฐฐ์ด์ ์ซ์๋ฐฐ์ด๋ก ๋ณํ, Num์ผ๋ก ๋ฐ๊ฟ์ผ ๊ณต๋ฐฑ์์ด ์ ๋๋ก ๋น๊ต ๊ฐ๋ฅ.
// trim()์ ์ ์ฉํด์ผ๋ง ๋ง์ง๋ง์ ๊ณต๋ฐฑ ''๊ฐ ์์.
let input = fs.readFileSync(file).toString().trim().split('\n');
let check = [];
let num;
for (let i = 0; i < input.length; i++) {
num = input[i] % 42;
// ๋ง์ฝ check ์ธ๋ฑ์ค ์์์์ num์ด ์์ ๊ฒฝ์ฐ, ๋ฐฐ์ด์์ ํด๋น ๊ฐ์ push
if (check.indexOf(num) === -1) check.push(num);
}
console.log(check.length);
728x90
'์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS] ๋ฐฑ์ค 4344๋ฒ ํ๊ท ์ ๋๊ฒ ์ง (0) | 2021.09.28 |
---|---|
[JS] ๋ฐฑ์ค 8958๋ฒ OXํด์ฆ (0) | 2021.09.28 |
[JS] ๋ฐฑ์ค 2577๋ฒ ์ซ์์ ๊ฐ์ (0) | 2021.09.28 |
[JS] ๋ฐฑ์ค 1110๋ฒ ๋ํ๊ธฐ ์ฌ์ดํด (0) | 2021.09.24 |
[JS] ๋ฐฑ์ค 10952๋ฒ A+B - 5 (0) | 2021.09.24 |