๊ด€๋ฆฌ ๋ฉ”๋‰ด

๐Ÿ–ฅ dev-ruby

[๋ฐฑ์ค€-11497] ํ†ต๋‚˜๋ฌด ๊ฑด๋„ˆ๋›ฐ๊ธฐ | node.js | silver1 ๋ณธ๋ฌธ

๋ฐฑ์ค€

[๋ฐฑ์ค€-11497] ํ†ต๋‚˜๋ฌด ๊ฑด๋„ˆ๋›ฐ๊ธฐ | node.js | silver1

ruby_s 2022. 5. 29. 01:10
728x90
๋ฐ˜์‘ํ˜•
SMALL

๋ฌธ์ œ

https://www.acmicpc.net/problem/11497

 

11497๋ฒˆ: ํ†ต๋‚˜๋ฌด ๊ฑด๋„ˆ๋›ฐ๊ธฐ

๋‚จ๊ทœ๋Š” ํ†ต๋‚˜๋ฌด๋ฅผ ์„ธ์›Œ ๋†“๊ณ  ๊ฑด๋„ˆ๋›ฐ๊ธฐ๋ฅผ ์ข‹์•„ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ N๊ฐœ์˜ ํ†ต๋‚˜๋ฌด๋ฅผ ์›ํ˜•์œผ๋กœ ์„ธ์›Œ ๋†“๊ณ  ๋›ฐ์–ด๋†€๋ ค๊ณ  ํ•œ๋‹ค. ๋‚จ๊ทœ๋Š” ์›ํ˜•์œผ๋กœ ์ธ์ ‘ํ•œ ์˜† ํ†ต๋‚˜๋ฌด๋กœ ๊ฑด๋„ˆ๋›ฐ๋Š”๋ฐ, ์ด๋•Œ ๊ฐ ์ธ์ ‘ํ•œ ํ†ต๋‚˜๋ฌด์˜ ๋†’์ด

www.acmicpc.net

 

ํ’€์ด

function solve(n, tree) {
  tree.sort((a, b) => a - b);
  let maxLen = 0;
  for (let i = 2; i < n; i++) {
    maxLen = Math.max(maxLen, Math.abs(tree[i] - tree[i - 2]));
  }
  return maxLen;
}

const filePath =
  process.platform === "linux"
    ? "/dev/stdin"
    : "๋ฐฑ์ค€/silver/11497/testcase.txt";
const input = require("fs")
  .readFileSync(filePath)
  .toString()
  .trim()
  .split("\n");
for (let i = 1; i < input.length - 1; ) {
  const n = +input[i];
  const tree = input[i + 1].split(" ").map((el) => +el);
  i += 2;
  console.log(solve(n, tree));
}

์ด ๋ฌธ์ œ๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด์„œ ์„ค๋ช…ํ•ด๋ณด๊ฒ ๋‹ค.

1, 3, 5, 7, 9, 12, 14, 16, 18, 20

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ–ˆ์„ ๋•Œ, ์•„๋ž˜์™€ ๊ฐ™์ด ๋ฐฐ์น˜ ํ–ˆ์„ ๋•Œ ๋‚œ์ด๋„์˜ ์ตœ์†Œ๊ฐ’์ด ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค. ์ด๋•Œ ๋‚œ์ด๋„๋Š” 5๊ฐ€ ๋œ๋‹ค. 

1, 5, 9, 14, 18, 20, 16, 12, 7,  3


์ฃผ์–ด์ง„ ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋’ค ์ˆœ์„œ๋Œ€๋กœ ์–‘๋์— ๋ฐฐ์น˜์‹œํ‚จ ๊ฒƒ์ด๋‹ค. ๊ทธ ์ด์œ ๋Š” 1, 2 , 3, 100, 101, •••๋ฅผ ์˜ˆ๋กœ ๋“ค์–ด์„œ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค. 3๊ณผ 100์„ ์ธ์ ‘์‹œ์ผœ์•ผ๋งŒ ๋‚œ์ด๋„์˜ ์ตœ์†Œ๊ฐ’์ด ๋‚˜์˜ฌ ๊ฒƒ ๊ฐ™์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š๋‹ค. 3๊ณผ 100์„ ์ธ์ ‘์‹œํ‚ฌ ๊ฒฝ์šฐ,

๋งŒ์•ฝ, 3์˜ ์™ผ์ชฝ์— 1์ด๋‚˜ 2์ค‘ ํ•˜๋‚˜๊ฐ€ ๋‚˜์˜จ๋‹ค๋ฉด ๊ทธ 1์ด๋‚˜ 2๋Š” 100๋ณด๋‹ค ํฐ ์–ด๋–ค ๊ฐ’๋“ค๊ณผ ์ธ์ ‘๋  ์ˆ˜ ๋ฐ–์— ์—†์„ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด 3๊ณผ 100์˜ ์ฐจ์ด๋ณด๋‹ค ๋” ํฐ ์ฐจ์ด๊ฐ’์ด ๋‚˜์˜ค๊ฒŒ ๋˜๋ฏ€๋กœ ๋‚œ์ด๋„์˜ ์ตœ์†Œ๊ฐ’์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋„์ถœํ•  ์ˆ˜ ์—†๋‹ค.

๋งŒ์•ฝ, 3์˜ ์™ผ์ชฝ์— 100๋ณด๋‹ค ํฐ ๊ฐ’์ด ์ธ์ ‘ํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด 3๊ณผ 100์˜ ์ฐจ์ด๋ณด๋‹ค 3๊ณผ ์™ผ์ชฝ์— ์ธ์ ‘ํ•œ ๊ทธ ๊ฐ’๊ณผ์˜ ์ฐจ์ด๊ฐ€ ๋” ์ปค์ง€๊ธฐ ๋•Œ๋ฌธ์— 3๊ณผ 100์ด ์ตœ๋Œ€ ๋‚œ์ด๋„๊ฐ€ ์•„๋‹ˆ๊ฒŒ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์˜ค๋ฆ„์ฐจ์ˆœ๋œ ๋ฐฐ์—ด์„ ์ž‘์€ ๊ฐ’๋ถ€ํ„ฐ ์–‘ ๋์—์„œ๋ถ€ํ„ฐ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉฐ ๋ฐฐ์น˜ํ•ด์•ผ ํ•œ๋‹ค.

1 => 1, 3 => 1, 5, 3 => 1, 5, 7, 3 => ••• => 1, 5, 9, 14, 18, 20, 16, 12, 7, 3

 ๊ฒฐ๊ตญ, ํ†ต๋‚˜๋ฌด๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋’ค i๋ฒˆ์งธ ๊ฐ’๊ณผ i-2๋ฒˆ์งธ ๊ฐ’์„ ๋น„๊ตํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ๋กœ์ง์ด๋‹ค. 
1, 3, 5, 7, •••  => 1๊ณผ 5๋น„๊ต, 3๊ณผ 7๋น„๊ต, ••• 

 

728x90
๋ฐ˜์‘ํ˜•
LIST