Question
๋ฐฑ์ค 10841๋ฒ : ๋์ด์ ์ ๋ ฌ
์จ๋ผ์ธ ์ ์ง์ ๊ฐ์ ํ ์ฌ๋๋ค์ ๋์ด์ ์ด๋ฆ์ด ๊ฐ์ ํ ์์๋๋ก ์ฃผ์ด์ง๋ค. ์ด๋, ํ์๋ค์ ๋์ด๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก, ๋์ด๊ฐ ๊ฐ์ผ๋ฉด ๋จผ์ ๊ฐ์ ํ ์ฌ๋์ด ์์ ์ค๋ ์์๋ก ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์จ๋ผ์ธ ์ ์ง ํ์์ ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 100,000)
๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๊ฐ ํ์์ ๋์ด์ ์ด๋ฆ์ด ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค. ๋์ด๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ผ๋ฉฐ, 200๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๊ณ , ์ด๋ฆ์ ์ํ๋ฒณ ๋์๋ฌธ์๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ธธ์ด๊ฐ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ๋ฌธ์์ด์ด๋ค. ์ ๋ ฅ์ ๊ฐ์ ํ ์์๋ก ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค๋ถํฐ ์ด N๊ฐ์ ์ค์ ๊ฑธ์ณ ์จ๋ผ์ธ ์ ์ง ํ์์ ๋์ด ์, ๋์ด๊ฐ ๊ฐ์ผ๋ฉด ๊ฐ์ ํ ์์ผ๋ก ํ ์ค์ ํ ๋ช ์ฉ ๋์ด์ ์ด๋ฆ์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด ์ถ๋ ฅํ๋ค.
์ ๋ ฅ์์
3
21 Junkyu
21 Dohyun
20 Sunyoung
์ถ๋ ฅ์์
20 Sunyoung
21 Junkyu
21 Dohyun
My Code
์ฒ์ํ์ด ์ด์ค ๋ฐฐ์ด๋ก ์ ์ฅํด์ ์ ๋ ฌ
const fs = require('fs');
const input = fs.readFileSync('dev/stdin').toString().trim().split('\n');
let len = Number(input.shift());
let users = [];
input.forEach((ele) => users.push(ele.split(' ')));
users.sort((a, b) => a[0] - b[0]);
console.log(users.map((ele) => ele.join(' ')).join('\n'))
๋ง์์ต๋๋ค!!
HOW? (ํ์ด๋ฐฉ๋ฒ)
- ์ ๋ ฅ๋ฐ์ 1์ฐจ์ ๋ฐฐ์ด์ 2์ฐจ์ ๋ฐฐ์ด๋ก forEach๋ฌธ์ ์ด์ฉํด ์๋ก์ด ๋ฐฐ์ด์ธ users์ push ํ๋ค.
- sort๋ฉ์๋๋ก ์ด์ฐจ์ ๋ฐฐ์ด์ ์์ ์๋ ๋์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋ค.
**** ํ๋ค๊ฐ ๋ ์๋ฌธ์ ****
String type์ Number๋ก ๋ฐ๊ฟ์ ๋น๊ตํ๋ ๊ฒ ํ์คํ๋ค๊ณ ์๊ฐํ๋ค
์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ๋ณ์ ํ์ ์ด ๋ฐํ์์ ๊ฒฐ์ ๋ผ์ ๊ด์ฐฎ์ ๊ฑด์ง ์ ์ฝ๋๋ฅผ ๋๋ ค๋ ๋ฌธ์ ๊ฐ ๋ง์๋ค
๊ทธ๋์ Number์ parseInt๋ฅผ ๋ถ์ฌ์ ํ์๋๋ฐ Vscode์์๋ ์ ๋์๊ฐ์ง๋ง
๋ฐฑ์ค์์๋ ๋ฐํ์ ์๋ฌ๊ฐ ๋ด๋ค (์ ์ผ ๊น๋ค๋ก์ด ๋)
์ ๋ ฅ๋ฐ๋ ๋์ด๋ฅผ Numberํ์ ์ผ๋ก ๋ณํํ๊ณ
์ข ๋ ์๋ฏธ ์๊ฒ key์ value๋ฅผ ์ฃผ๋ ๊ฐ์ฒด ๋ฐฐ์ด๋ก ์ ์ฅํด์ ์ ๋ ฌํ๊ณ ์ถ์๋ค.
๊ตฌ๊ธ๋ง์ ํ ๊ฒฐ๊ณผ ๋ด๊ฐ ์ํ๋ ๋ฐฉํฅ์ผ๋ก ํผ ํ์ด๊ฐ ์์๋ค!
๊ฐ์ฒด๋ฐฐ์ด๋ก ์ ์ฅํด ์ ๋ ฌํ ํ์ด์ฝ๋
const fs = require('fs');
const input = fs.readFileSync('dev/stdin').toString().trim().split('\n');
let len = Number(input.shift());
let users = input
.map(ele =>
({ age: parseInt(ele.split(' ')[0]), user: ele.split(' ')[1] }))
.sort((a, b) =>
a.age - b.age)
.map(ele =>
String(ele.age) + ' ' + String(ele.user));
console.log(users2.join('\n'))
๋ง์์ต๋๋ค!!
์ํ๊ฐ ๋๋ ๊ธฐ๋ถ
- ๋์ด๋ฅผ ์ ์ฅํ ๋ parseInt๋ฅผ ์ด์ฉํด Number๋ก ๋ณํํด ์ ์ฅํ๋ค
- age๋ก ์ ๋ ฌํ ํ ๋ฐฐ์ด์ ๋ค์ String์ผ๋ก ๋ณํํด์ค๋ค.
- ์ถ๋ ฅํ๋ฉด ๋
'Algorithms > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS] ๋ฐฑ์ค 7568๋ฒ : ๋ฉ์น (0) | 2022.06.08 |
---|---|
[JS] ๋ฐฑ์ค 10815๋ฒ : ์ซ์ ์นด๋ (0) | 2022.06.05 |
[JS] ๋ฐฑ์ค 1931 ๋ฒ : ํ์์ค ๋ฐฐ์ (feat.๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ) (0) | 2022.05.24 |
[JS] ๋ฐฑ์ค 10870๋ฒ : ํผ๋ณด๋์น ์ 5 (0) | 2022.05.16 |
[JS] ๋ฐฑ์ค 10872๋ฒ : ์ฌ๊ท (0) | 2022.05.15 |