whatisthis?

๋ฐฑ์ค€ 2562 javascript (node.js) ํ’€์ด ๋ณธ๋ฌธ

ALGORITHM/BOJ (Node.js)

๋ฐฑ์ค€ 2562 javascript (node.js) ํ’€์ด

thisisyjin 2022. 1. 4. 10:29

1์ฐจ์› ๋ฐฐ์—ด - (2)

 

 


 

๐Ÿ’ก๋ฌธ์ œ

9๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ด๋“ค ์ค‘ ์ตœ๋Œ“๊ฐ’์„ ์ฐพ๊ณ  ๊ทธ ์ตœ๋Œ“๊ฐ’์ด ๋ช‡ ๋ฒˆ์งธ ์ˆ˜์ธ์ง€๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์„œ๋กœ ๋‹ค๋ฅธ 9๊ฐœ์˜ ์ž์—ฐ์ˆ˜ 3, 29, 38, 12, 57, 74, 40, 85, 61 ์ด ์ฃผ์–ด์ง€๋ฉด, ์ด๋“ค ์ค‘ ์ตœ๋Œ“๊ฐ’์€ 85์ด๊ณ , ์ด ๊ฐ’์€ 8๋ฒˆ์งธ ์ˆ˜์ด๋‹ค.

๐Ÿ“์ž…๋ ฅ

์ฒซ์งธ ์ค„๋ถ€ํ„ฐ ์•„ํ™‰ ๋ฒˆ์งธ ์ค„๊นŒ์ง€ ํ•œ ์ค„์— ํ•˜๋‚˜์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ์ž์—ฐ์ˆ˜๋Š” 100 ๋ณด๋‹ค ์ž‘๋‹ค.

๐Ÿ“ˆ์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•˜๊ณ , ๋‘˜์งธ ์ค„์— ์ตœ๋Œ“๊ฐ’์ด ๋ช‡ ๋ฒˆ์งธ ์ˆ˜์ธ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์˜ˆ์ œ ์ž…๋ ฅ

3
29
38
12
57
74
40
85
61

 

์˜ˆ์ œ ์ถœ๋ ฅ

85
8

 

 


< ์ฝ”๋“œ >

let input = require('fs').readFileSync('/dev/stdin').toString().split('\n').map(x => Number(x));
let max = input[0];
let count = 0;

for(let i=1;i<9;i++) {
   if(input[i] > max) {
      max = input[i];
      count = i;
   }
}

console.log(max);
console.log(count+1);

์ด์ „ ๋ฌธ์ œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ์ดˆ๊ธฐ ์ตœ๋Œ“๊ฐ’ max = input[0] ์œผ๋กœ ์„ค์ •ํ•œ ํ›„์—

๋ช‡๋ฒˆ์งธ ์š”์†Œ์ธ์ง€ ์นด์šดํŠธํ•˜๋Š” count ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ๋‹ค. (์ˆซ์žํ˜•์ด๋ฏ€๋กœ ๊ทธ๋ƒฅ 0์œผ๋กœ ์ดˆ๊ธฐํ™”)

 

for๋ฌธ์€ ๋‘๋ฒˆ์งธ ์š”์†Œ(input[1])๋ถ€ํ„ฐ ์•„ํ™‰๋ฒˆ์งธ ์š”์†Œ (input[8])๊นŒ์ง€ ๊ฒ€์‚ฌํ•˜๋ฉด ๋˜๋ฏ€๋กœ

i=1๋ถ€ํ„ฐ i<9๊นŒ์ง€ i++ํ•ด์ค€๋‹ค.

 

>> ์ฒ˜์Œ์—” ๋‚ด๊ฐ€ input.length๋กœ ํ•ด์ฃผ์—ˆ์ง€๋งŒ ๋ฌธ์ œ์—์„œ 9๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ž์—ฐ์ˆ˜๋ผ๊ณ  ๋‚˜์™€์žˆ์œผ๋ฏ€๋กœ 9๋กœ ํ•ด์ฃผ๋ฉด ๋.

 

** ์ฃผ์˜> index๋Š” N-1๋ฒˆ์งธ ์ด๋ฏ€๋กœ ์ฝ˜์†”์— ์ถœ๋ ฅํ•  ๋•Œ๋Š” count + 1์„ ํ•ด์ค˜์•ผํ•œ๋‹ค!

 

 

 

 

 

๐Ÿ’ก  +) ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•

 

- ์ฒซ๋ฒˆ์งธ ์š”์†Œ๋ถ€ํ„ฐ ๊ฒ€์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ• (i=1๋ถ€ํ„ฐ ๋ง๊ณ  i=0๋ถ€ํ„ฐ)

- ๋‹จ, ์ด๋•Œ๋Š” ์ตœ์†Œ๊ฐ’์„ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. >> ์ด ๋ฌธ์ œ์—์„œ๋Š” '์ž์—ฐ์ˆ˜'๋ผ๊ณ  ๋‚˜์™€์žˆ์œผ๋‹ˆ 1์ด ์ตœ์†Œ์ž„. 

let input = require('fs').readFileSync('/dev/stdin').toString().split('\n').map(x => Number(x));
let max = 1;
let count = 0;

for(let i=0;i<9;i++) {
   if(input[i] > max) {
      max = input[i];
      count = i;           // ์—ฌ๊ธฐ์—์„œ count = i + 1 ํ•ด์ฃผ๊ณ 
   }
}

console.log(max);
console.log(count+1);      // ์—ฌ๊ธฐ์—์„œ console.log(count) ํ•ด์ค˜๋„ ๋จ

 


 

๐Ÿ”ปํ‹€๋ฆฐ ์ฝ”๋“œ๋“ค๐Ÿ”ป

 

# Reference Error

let input = require('fs').readFileSync('/dev/stdin').toString().split('\n').map(x => Number(x));
let max = 0;

for(i=0;i<input.length;i++) {
   if(input[i] > max){
      max = input[i];
      let cnt = i;
   }
}
console.log(max + '\n' + cnt);

input.length๋ฅผ ์ด์šฉํ•ด์„œ ํ‹€๋ ธ๋‹ค.

i=0๋ถ€ํ„ฐ i<9๋กœ ํ•ด์ฃผ๋ฉด ์ •๋‹ต์ด๋‹ค.

๋˜ํ•œ cnt+1์„ ์ถœ๋ ฅํ•ด์•ผํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๊นœ๋นกํ–ˆ๋‹ค.