๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€ JS

[๋ฐฑ์ค€] node.js / ์ •๋ ฌ 2750 ์ˆซ์ž ์ •๋ ฌํ•˜๊ธฐ

by Tamii 2021. 4. 29.
๋ฐ˜์‘ํ˜•

๐Ÿฅฒ

JS๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ’€๊ธฐ๋กœ ๊ฒฐ์‹ฌํ–ˆ๋‹ค.

ํŒŒ์ด์ฌ์€ ์ •๋ง ์ข‹๋‹ค . ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•œ๊ณ  ํ•œ์ค„๋กœ ๋๋‚˜๊ณ  .. ์žฅ์ ์€ ๋๋„ ์—†์ง€๋งŒ

 ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ชฉํ‘œ์ธ ์ด์ƒ ์ž์Šค๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ’€ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค ..(ํ‘ํ‘ 

๊ณ ๋กœ ๋‹ค์‹œ ๊ธฐ์–ต์„ ์‚ด๋ ค ์ž…์ถœ๋ ฅ ๋ฐ›๋Š” ๋ฒ•์„ ์•Œ์•„๋‚ด์—ˆ๋‹ค.

๋ฐฑ์ค€์€ ์ž…์ถœ๋ ฅ์ด ๊นŒ๋‹ค๋กญ๊ธฐ ๋•Œ๋ฌธ์—...

 


 

 

๐Ÿ“Œ2750 ์ˆซ์ž ์ •๋ ฌํ•˜๊ธฐ

www.acmicpc.net/problem/2750

 

2750๋ฒˆ: ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ

์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋Š” ์ ˆ๋Œ“๊ฐ’์ด 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค. ์ˆ˜๋Š” ์ค‘๋ณต๋˜์ง€ ์•Š๋Š”๋‹ค.

www.acmicpc.net

 

 

 

๋‚ด ํ’€์ด

const fs = require("fs");
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');


input.shift();

input.sort((a, b) => a - b);

for (let i = 0; i < input.length; i++) {
  console.log(input[i]);
}

 

์ž์Šค์˜ sort ๋ฐฉ๋ฒ•์€ ํ™”๋ คํ–ˆ๋‹ค.

ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์ธ์ง€ ๋‚ด๋ฆผ์ฐจ์ˆœ์ธ์ง€ ์•Œ๋ ค์ค˜์•ผ ํ•œ๋‹ค.

input.sort()๋Š” ํŒŒ์ด์ฌ์—์„œ๋‚˜ ํ†ตํ•œ๋‹ค 

 


๐Ÿ“Œ11399 ATM

www.acmicpc.net/problem/11399

 

11399๋ฒˆ: ATM

์ฒซ์งธ ์ค„์— ์‚ฌ๋žŒ์˜ ์ˆ˜ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ๊ฐ ์‚ฌ๋žŒ์ด ๋ˆ์„ ์ธ์ถœํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„ Pi๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Pi ≤ 1,000)

www.acmicpc.net

์ฒ˜์Œ ์ž…๋ ฅ๋ฐ›๋Š” ๋ถ€๋ถ„์—์„œ ๋งŽ์ด ํ•ด๋งธ๋‹ค.

 

const fs = require("fs");
const input = fs.readFileSync("./test").toString().trim().split("\n");

5
3 1 4 3 2

์ด ๊ฐ’์„ ์ž…๋ ฅ ๋ฐ›์•˜๋”๋‹ˆ 

['5', '3 1 4 3 2']

์ •ํ™•ํžˆ ์ด๋ ‡๊ฒŒ ์ž…๋ ฅ์ด ๋ฐ›์•„์กŒ๋‹ค. ์ˆซ์ž๋„ ์•„๋‹ˆ๊ณ  ๋ถ„๋ฆฌ๋„ ์•ˆ๋œ ์ƒํƒœ~

 

 

 

๋‚ด ํ’€์ด

const fs = require("fs");
const [n, input] = fs.readFileSync('/dev/stdin').toString().trim().split('\n');


const answer = input
  .split(" ")
  .sort((a, b) => a - b)
  .reduce((acc, cur, i) => acc + cur * (n - i), 0);

console.log(answer);

์ฒ˜์Œ์—” reduce((acc,cur) => acc +cur)

์ด๋ ‡๊ฒŒ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‘๊ฐ€์ง€ ์ด์œ ๋กœ ์‚ฌํ•ญ๋“ค์ด ์ถ”๊ฐ€๋˜์—ˆ๋‹ค.

 

 

 * (n-i) ํ•˜๋Š” ์ด์œ 

๋ˆ„์ ๊ฐ’์ด ๊ณ„์† ๋”ํ•ด์ ธ์•ผ ํ•จ

12334 ๋Š” 

1  1+2  1+2+3  1+2+3+3  1+2+3+3+4

 

* 0 ๋ถ€ํ„ฐ  ์ธ๋ฑ์Šค๋ฅผ ๋„ฃ๋Š” ์ด์œ 

ํ˜„์žฌ acc ,cur๊ฐ’์€ ๋ฌธ์ž์ด๊ธฐ ๋•Œ๋ฌธ์— ์ดˆ๊ธฐ๊ฐ’์„ 0์œผ๋กœ ๋„ฃ์–ด์„œ ์ˆซ์ž์—ฐ์‚ฐ์œผ๋กœ ๋งŒ๋“ ๋‹ค.

 

 

๐Ÿ’™ ํŒŒ์ด์ฌ๊ณผ ์ž์Šค์˜ ํ˜ผํ•ฉ์œผ๋กœ ์ธํ•ด ๋จธ๋ฆฌ๊ฐ€ ์–ด์ง€๋Ÿฌ์› ๋‹ค. reduceํ•จ์ˆ˜๋ฅผ ์ž์œ ์ž์žฌ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋‚ด๊ฐ€ ๋˜๊ธฐ๋ฅผ ...

๋Œ“๊ธ€