๋”ฐํŒŒ๐Ÿ•
Hwaiian Pizza IT Pub
๋”ฐํŒŒ๐Ÿ•
  • ALL (62)
    • Front-End (13)
      • HTML & CSS (2)
      • JavaScript (7)
      • React (2)
      • TypeScript (0)
      • Jquery (0)
      • Git (1)
      • Editor (0)
    • Algorithms (44)
      • Baekjoon (28)
      • Programmers (13)
      • Algorithms (3)
    • Computer Science (0)
      • Math (0)
    • Conference (1)
    • Life (3)
      • Book (0)
hELLO ยท Designed By ์ •์ƒ์šฐ.
๋”ฐํŒŒ๐Ÿ•

Hwaiian Pizza IT Pub

[JS] ๋ฐฑ์ค€ 2675๋ฒˆ : ๋ฌธ์ž์—ด ๋ฐ˜๋ณต
Algorithms/Baekjoon

[JS] ๋ฐฑ์ค€ 2675๋ฒˆ : ๋ฌธ์ž์—ด ๋ฐ˜๋ณต

2022. 4. 26. 20:11
๋ฐ˜์‘ํ˜•

 

Question

 

๋ฐฑ์ค€ 2675๋ฒˆ : ๋ฌธ์ž์—ด ๋ฐ˜๋ณต

๋ฌธ์ž์—ด S๋ฅผ ์ž…๋ ฅ๋ฐ›์€ ํ›„์—, ๊ฐ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•ด ์ƒˆ ๋ฌธ์ž์—ด P๋ฅผ ๋งŒ๋“  ํ›„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ฆ‰, ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•˜๊ณ , ๋‘ ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•˜๋Š” ์‹์œผ๋กœ P๋ฅผ ๋งŒ๋“ค๋ฉด ๋œ๋‹ค. S์—๋Š” QR Code "alphanumeric" ๋ฌธ์ž๋งŒ ๋“ค์–ด์žˆ๋‹ค.

QR Code "alphanumeric" ๋ฌธ์ž๋Š” 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: ์ด๋‹ค

 

 

2675๋ฒˆ: ๋ฌธ์ž์—ด ๋ฐ˜๋ณต

๋ฌธ์ž์—ด S๋ฅผ ์ž…๋ ฅ๋ฐ›์€ ํ›„์—, ๊ฐ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•ด ์ƒˆ ๋ฌธ์ž์—ด P๋ฅผ ๋งŒ๋“  ํ›„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ฆ‰, ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•˜๊ณ , ๋‘ ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ R๋ฒˆ ๋ฐ˜๋ณตํ•˜๋Š” ์‹์œผ๋กœ P๋ฅผ ๋งŒ๋“ค๋ฉด ๋œ๋‹ค

www.acmicpc.net

 

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T(1 ≤ T ≤ 1,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ๋ฐ˜๋ณต ํšŸ์ˆ˜ R(1 ≤ R ≤ 8), ๋ฌธ์ž์—ด S๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. S์˜ ๊ธธ์ด๋Š” ์ ์–ด๋„ 1์ด๋ฉฐ, 20๊ธ€์ž๋ฅผ ๋„˜์ง€ ์•Š๋Š”๋‹ค. 

 

 

์ž…๋ ฅ์˜ˆ์‹œ

2
3 ABC
5 /HTP

 

์ถœ๋ ฅ์˜ˆ์‹œ

AAABBBCCC
/////HHHHHTTTTTPPPPP

 


 

My Code

 

Vscode์—์„œ๋Š” ๋™์ž‘์ด ๋˜์—ˆ๋˜ ์ฝ”๋“œ๊ฐ€ ๋ฐฑ์ค€์— ์ œ์ถœํ•˜๋‹ˆ๊นŒ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ์™€ ์ถœ๋ ฅ ์ดˆ๊ณผ๊ฐ€ ๋–ด๋‹ค.

 

 

 

 

์•„๋ž˜๋Š” ์ถœ๋ ฅ ์ดˆ๊ณผ๊ฐ€ ๋‚˜์˜จ ์ฝ”๋“œ์ด๋‹ค.

let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n');
let length = Number(input[0]);
let answer = '';

for (let i = 1 ; i <= length; i ++) {
    let arr = input[i].split(' ');
    let str = arr[1];
    for (let j = 0; j < arr[1].length; j++ ) {
        answer += str[j].repeat(arr[0])
    }
    console.log(answer);
}

 

WHY?

์ถœ๋ ฅ ์ดˆ๊ณผ๊ฐ€ ์™œ ๋‚˜์˜ฌ๊นŒ?

๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ๋‹ค๋ฅธ ๋ฌธ์ œ์—์„œ ์ถœ๋ ฅ์ดˆ๊ณผ์— ๋Œ€ํ•œ ์ƒ์„ธํ•œ ์ •์˜์™€ ์ด์œ ๋ฅผ ์•Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๊ธ€ ์ฝ๊ธฐ - [ํŒŒ์ด์ฌ] ์ถœ๋ ฅ์ดˆ๊ณผ์ž…๋‹ˆ๋‹ค. ํ‹€๋ฆฐ๊ณณ ์•Œ๋ ค์ฃผ์„ธ์š”ใ…œใ…œ!

๋Œ“๊ธ€์„ ์ž‘์„ฑํ•˜๋ ค๋ฉด ๋กœ๊ทธ์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

www.acmicpc.net

์ถœ๋ ฅ์ดˆ๊ณผ

ํ”„๋กœ๊ทธ๋žจ์ด ๋„ˆ๋ฌด ๋งŽ์€ ์ถœ๋ ฅ์„ ํ•œ ๊ฒฝ์šฐ ๋ฐœ์ƒ, ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค์™€ ๊ฐ™์€ ์˜๋ฏธ

๋ฏธ๋ฆฌ ๊ตฌํ•ด๋†“์€ ์ •๋‹ตํŒŒ์ผ์˜ ํฌ๊ธฐ๊ฐ€ 2๋ฐฐ๋ฅผ ๋„˜์–ด๊ฐ€๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›๋Š”๋‹ค.

 

์ถœ๋ ฅ์ดˆ๊ณผ ์ฝ”๋“œ๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

AAABBBCCC
AAABBBCCC/////HHHHHTTTTTPPPPP
for๋ฌธ์ด ๋‘๋ฒˆ ๋Œ๋ฉด์„œ answer์— ์Œ“์ธ ๊ฐ’์„ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•ด์ค€๋‹ค.

 

 
์ถœ๋ ฅ์ดˆ๊ณผ ์ฝ”๋“œ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ˆ˜์ •ํ–ˆ๋‹ค.

 

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

let length = Number(input[0]);
let answer = '';

for (let i = 1 ; i <= length; i ++) {
    let arr = input[i].split(' ');
    let str = arr[1];
    for (let j = 0; j < arr[1].length; j++ ) {
        answer += str[j].repeat(arr[0]);
    }
    answer += '\n'
}
console.log(answer)

๋งž์•˜์Šต๋‹ˆ๋‹ค!!

 

 

HOW? (ํ’€์ด๋ฐฉ๋ฒ•)

1. for๋ฌธ์•ˆ์— answer๋ฅผ ์ถœ๋ ฅํ•˜์ง€ ๋ง๊ณ  ๋ฐ–์—์„œ ํ•œ ๋ฒˆ๋งŒ ์ถœ๋ ฅํ•ด์ฃผ์—ˆ๋‹ค.

2. for๋ฌธ์„ ํ•œ ๋ฒˆ ๋Œ ๋•Œ๋งˆ๋‹ค answer๊ฐ’์— + \n์„ ์ถ”๊ฐ€ํ•ด ์ถœ๋ ฅํ•  ๋•Œ ์ค„ ๋ณ€๊ฒฝ์ด ๋˜๋„๋ก ์ˆ˜์ •ํ–ˆ๋‹ค.

 

 

 

 

 

๋ฐฑ์ค€์—์„œ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ๋ฏธ๊ถ์— ๋น ์ง€๋Š” ๊ฐ€์žฅ ํฐ ์›์ธ์€ ๋ฐ”๋กœ '๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ'๋‹ค.

๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ : ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰ ๋„์ค‘ ๋น„์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋˜๋Š” ๊ฒƒ

let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n');
let length = Number(input[0]);

for (let i = 1 ; i <= length; i ++) {
    let arr = input[i].split(' ');
    let str = arr[1];
    let strLength = arr[1].length;
    let answer = '';

    for (let j = 0; j < strLength; j++ ) {
        answer += str[j].repeat(arr[0])
    }
    console.log(answer);

Vscode๋Š” ๋‹ต์„ ์ž˜๋งŒ ์ถœ๋ ฅํ•ด์ฃผ์—ˆ๋Š”๋ฐ ๋ฐฑ์ค€์— ์ œ์ถœํ•˜๋‹ˆ ๋ ์šฉ! ๐Ÿฅฒ

์™œ ๊ทธ๋Ÿฌ๋‚˜ ๋ดค๋”๋‹ˆ for๋ฌธ์— {} ๊ฐ€๋กœ๋ฅผ ์ œ๋Œ€๋กœ ์•ˆ ๋‹ซ์•„ ์ฃผ์—ˆ๋‹ค.

์–ด์ œ๋Š” ํ’€๋ฉด์„œ๋„ ๋ชป ์ฐพ๊ฒ ๋”๋‹ˆ ์ด๋Ÿฐ ์‚ฌ์†Œํ•œ ์‹ค์ˆ˜๊ฐ€ ์žˆ์—ˆ๋‹ค.

 

๋•๋ถ„์— ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ ์ฐพ๋‹ค๊ฐ€ ์ผ๋ชฉ์š”์—ฐํ•˜๊ฒŒ ์ •๋ฆฌํ•œ ๋ธ”๋กœ๊ทธ ๊ธ€์„ ๋ณด์•˜๋‹ค.

๋ฐฑ์ค€์—์„œ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ๋กœ ํ—ˆ๋•์ด๋Š” ์‚ฌ๋žŒ๋“ค์„ ๊ตฌ์›ํ•œ ๊ธ€ ๊ฐ™์•„ ๋ณด์˜€๊ณ  ์กฐ์šฉํžˆ ๋ถ๋งˆํฌ๋ฅผ ํ–ˆ๋‹ค.

๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ๋Š” ์•ž์œผ๋กœ๋„ ์ž์ฃผ ๋งŒ๋‚˜๊ฒŒ ๋  ๊ฒƒ ๊ฐ™์€ ์˜ˆ๊ฐ์— ๐Ÿฅธ

https://www.secmem.org/blog/2020/09/19/rte/#

 

 

 

 

๊ฐ€๋กœ๋ฅผ ๋‹ซ๊ณ  ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ๊ฐ€ ์‚ฌ๋ผ์ง„ ์ฝ”๋“œ์ด๋‹ค.

let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n');
let length = Number(input[0]);

for (let i = 1 ; i <= length; i ++) {
    let arr = input[i].split(' ');
    let str = arr[1];
    let strLength = arr[1].length;
    let answer = '';

    for (let j = 0; j < strLength; j++ ) {
        answer += str[j].repeat(arr[0])
    }
    console.log(answer);
}

for๋ฌธ์•ˆ์— ๋ณ€์ˆ˜๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ธ ์„ ์–ธํ–ˆ๋‚˜?

for๋ฌธ์•ˆ์— console.log()๋ฅผ ๋„ˆ๋ฌด ๋‚จ๋ฐœํ–ˆ๋‚˜?

๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์ด ๊นŠ์–ด์งˆ ๋ฌด๋ ต ๋ณธ ๊ฐ€๋กœ๊ฐ€ ์•ˆ ๋‹ซํžŒ ๋ชจ์Šต์ด๋ž€๐Ÿฅฒ

๋•๋ถ„์— ๊ณต๋ถ€ ๋” ํ–ˆ๋‹ค.

์•ˆ ๋ฏธ์•ˆํ•˜๊ณ  ๊ณ ๋ง™๋‹ค.

 

 

 

๋ฐ˜์‘ํ˜•
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Algorithms > Baekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[JS] ๋ฐฑ์ค€ 1712๋ฒˆ : ์†์ต๋ถ„๊ธฐ์   (0) 2022.05.05
[JS] ๋ฐฑ์ค€ 2908๋ฒˆ : ์ƒ์ˆ˜  (0) 2022.05.04
[JS] ๋ฐฑ์ค€ 1065๋ฒˆ : ํ•œ์ˆ˜  (0) 2022.04.23
[JS] ๋ฐฑ์ค€ 1546๋ฒˆ : ํ‰๊ท   (0) 2022.04.22
[JS] ๋ฐฑ์ค€ 3052๋ฒˆ : ๋‚˜๋จธ์ง€  (0) 2022.04.20
    'Algorithms/Baekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [JS] ๋ฐฑ์ค€ 1712๋ฒˆ : ์†์ต๋ถ„๊ธฐ์ 
    • [JS] ๋ฐฑ์ค€ 2908๋ฒˆ : ์ƒ์ˆ˜
    • [JS] ๋ฐฑ์ค€ 1065๋ฒˆ : ํ•œ์ˆ˜
    • [JS] ๋ฐฑ์ค€ 1546๋ฒˆ : ํ‰๊ท 
    ๋”ฐํŒŒ๐Ÿ•
    ๋”ฐํŒŒ๐Ÿ•
    ์ €์ชฝ ์†๋‹˜์ด ๋ณด๋‚ด์‹  ์—๋Ÿฌ์ž…๋‹ˆ๋‹ค. ๋””๋ฒ„๊น… ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?๐Ÿน

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”