์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ๋ฐฑ์ค 2108 nodejs
- TypeError: createContext only works in Client Components. Add the "use client" directive at the top of the file to use it. Read more:
- js
- ์ต์ ๋์ฒด์ด๋
- suspense ๋น๋๊ธฐ
- suspense react-query
- suspense ๋์์๋ฆฌ
- next13 emotion
- emtion app router
- ๋ฆฌ์กํธ์ฟผ๋ฆฌ suspense
- app router emotion
- ๋ฐฑ์ค 1339๋ฒ js
- ๊ตฌ๋ฆํค
- ์นด์นด์ค ์ฝํ
- ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌธ์์ด ์์ถ
- ๋ฐฑ์ค 1339๋ฒ ์๋ฐ์คํฌ๋ฆฝํธ
- js ๋ฌธ์์ด ์์ถ
- ๋ฐฑ์ค 2108 ์๋ฐ์คํฌ๋ฆฝํธ
- js ์ค์ฝํ
- suspense ๋ณ๋ชฉํ์
- ์ฌ์ฉ์ฑ ๊ฐ์
- ๋ฐฑ์ค 1339๋ฒ nodejs
- ๊ตฌ๋ฆํค ์ฑ๋ฆฐ์ง ํ๊ณ
- ์๋ฐ์คํฌ๋ฆฝํธ ์ค์ฝํ
- ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์์ด ์์ถ
- ์ค์ฝํ
- js ๊ฑฐ๋ฆฌ๋๊ธฐ ํ์ธํ๊ธฐ
- ๊ตฌ๋ฆํค ์ฑ๋ฆฐ์ง
- ํ๋ก๊ทธ๋๋จธ์ค ๊ฑฐ๋ฆฌ๋๊ธฐ ํ์ธํ๊ธฐ
- emotion RSC
- Today
- Total
Lennon FE
[๋ฐฑ์ค 4949๋ฒ] ๊ท ํ์กํ ์ธ์ - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs) ๋ณธ๋ฌธ
[๋ฐฑ์ค 4949๋ฒ] ๊ท ํ์กํ ์ธ์ - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs)
Lennon 2022. 1. 20. 19:44https://www.acmicpc.net/problem/4949
const fs = require('fs');
let input = fs.readFileSync('../input.txt').toString().trim().split('\n');
input.pop();
const answer = [];
input.filter((v) => {
const bracketArr = [];
for (let i = 0; i < v.length; i++) {
switch (v[i]) {
case '[':
bracketArr.push('[');
break;
case ']':
if (bracketArr.includes('[')) {
let index = bracketArr.lastIndexOf('[');
if (bracketArr[bracketArr.length - 1] !== '[') {
bracketArr.push(']');
break;
}
bracketArr.splice(index, 1);
} else {
bracketArr.push(']');
}
break;
case '(':
bracketArr.push('(');
break;
case ')':
if (bracketArr.includes('(')) {
let index = bracketArr.lastIndexOf('(');
if (bracketArr[bracketArr.length - 1] !== '(') {
bracketArr.push(')');
break;
}
bracketArr.splice(index, 1);
} else {
bracketArr.push(')');
}
break;
}
}
if (bracketArr.length === 0) {
answer.push('yes');
} else {
answer.push('no');
}
});
console.log(answer.join('\n'));
bracketArr => switch๋ฌธ์ ์ด์ฉํด [ , ] , ( , ) ๋ง ๋ฃ๋ ๋ฐฐ์ด์ด๋ค.
[ , ( ์ ๋ฌด์กฐ๊ฑด ๋ฐฐ์ด์ pushํ๋ฉฐ, ๋ซ๋ ๊ดํธ์ผ ๋๋ง ์กฐ๊ฑด์ ๊ฒ์ฌํ๋ค.
19๋ฒ์งธ ์ค์์, ๋ง์ฝ bracketArr์ ๋ง์ง๋ง ์ธ๋ฑ์ค์ ๊ฐ์ด [ ์ด ์๋๋ผ๋ฉด ๊ดํธ๊ฐ ์ฑ๋ฆฝ๋์ง ์์ผ๋ฏ๋ก ๊ทธ๋ฅ [ ๊ฐ์ ๋ค์ push ํ๋ค.
์ฝ๊ฒ ์๋ฅผ ๋ค์ด ์ค๋ช ํ๋ฉด
input๊ฐ์ด [์๋ ํ(์ธ์]์ ๋ ๋๊ตฌ์ ๋๋ค). ๋ผ๊ณ ์๊ฐํด๋ณด์.
input๊ฐ์ ์ํํ๋ฉฐ bracketArr์๋ ์์๋๋ก [, ( ๊ฐ ์ฝ์ ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ค ] ๋ฅผ ๋ง๋๋ฉด bracketArr์ ๋ง์ง๋ง ๊ฐ์ ํ์ธํ๋ค.
๋ง์ง๋ง ๊ฐ์ด ( ์ด๋ฉฐ, ๊ดํธ๊ฐ ์ฑ๋ฆฝ์ด ์๋๋ฏ๋ก ๊ทธ๋ฅ ] ๋ฅผ push ํ๋ค.
๊ทธ๋ฌ๋ฉด bracketArr = [ '[', '(', ']' ] ๊ฐ ๋ ๊ฒ์ด๋ค. ๊ทธ๋ค์ ) ๋ฅผ ๋ง๋๋ฉด ๋ง์ง๋ง ๊ฐ์ด ( ์ด ์๋๋ฏ๋ก ๋ค์ ) ๊ฐ์ push ํ๋ค.
๊ดํธ๋ฅผ ๋ง๋ฌ์ ๋ bracketArr
bracketArr = [ ]
bracketArr = [ '[' ]
bracketArr = [ '[', '(' ]
bracketArr = [ '[', '(', ']' ] // ์กฐ๊ฑด ๊ฒ์ฌ ๊ดํธ๊ฐ ์ฑ๋ฆฝ ์๋๋ฏ๋ก push
bracketArr = [ '[', '(', ']', ')'] // ์กฐ๊ฑด ๊ฒ์ฌ ๊ดํธ๊ฐ ์ฑ๋ฆฝ ์๋๋ฏ๋ก push
๊ดํธ๊ฐ ์ ๋๋ก ์ฑ๋ฆฝ์ด ๋๋ฉด bracketArr์ ๊ฒฐ๊ณผ๋ ๋น ๋ฐฐ์ด์ด๋ค. 48๋ฒ ์ค์์ ์กฐ๊ฑด์ ํ์ธํ๊ณ answer๋ฐฐ์ด์ yes, no ๊ฐ์ ๋ฃ๊ณ
console์ ๋์ฐ๋ฉด ์ ๋ต์ด๋ค.
'๐ฅ Algorithm > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค 16917๋ฒ] ์๋ ๋ฐ ํ๋ผ์ด๋ ๋ฐ - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs) (0) | 2022.01.21 |
---|---|
[๋ฐฑ์ค 17298๋ฒ] ์คํฐ์ - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs) (0) | 2022.01.21 |
๋ฐฑ์ค nodejs ์ ๋ ฅํ๋ ๋ฐฉ๋ฒ / ๋ฐฑ์ค ์๋ฐ์คํฌ๋ฆฝํธ ์ ๋ ฅ (0) | 2022.01.20 |
[๋ฐฑ์ค 9012๋ฒ] ๊ดํธ - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs) (0) | 2022.01.20 |
[๋ฐฑ์ค 10773๋ฒ] ์ ๋ก - ์๋ฐ์คํฌ๋ฆฝํธ(nodejs) (0) | 2022.01.20 |