반응형 분류 전체보기202 [백준] node.js/ 10828 스택 처음 풀이(시간초과) const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim().split('\n'); input.shift(); let stack = []; input.map((cmd) => { const cmdArr = cmd.split(' '); const command = cmdArr[0]; switch (command) { case 'push': const number = cmdArr[1]; stack.push(parseInt(number)); break; case 'top': if (stack.length === 0) console.log(-1); else console.log(stack[sta.. 2021. 10. 15. [백준] node.js/ 3986 좋은 단어 🛠 삽질들 1. 반씩 나눠서 하면 어떨까? AABB인경우 안맞음 let cnt = 0; let wordStack = []; for (let i = 0; i < n; i++) { const word = input[i]; if (word.length % 2 !== 0) continue; const halfLen = word.length / 2; const prevWord = word.slice(0, halfLen).split(''); const nextWord = word.slice(halfLen).split(''); for (let j = 0; j < halfLen; j++) { const next = nextWord[j]; const prev = prevWord[halfLen - 1 - j]; conso.. 2021. 10. 14. [백준] node.js/ 2164 카드2 처음 풀이 (시간 초과) const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim(); const numArr = Array.from({ length: parseInt(input) }, (v, i) => i + 1); while (numArr.length > 1) { numArr.shift(); numArr.push(numArr.shift()); } console.log(numArr[0]); 배열을 돌며 길이가 1이될때까지 1. 첫 번째 값 제거 2. 첫 번째 값 뒤로 붙이기 반복했지만... 시간초과 검색해 보니 배열의 push ,pop 을 이용하면 시간초과가 뜬다고 한다. 배열의 연산시간상 맨 앞 요소의 .. 2021. 10. 13. [TS 에러] Property 'map' does not exist on type ''.ts(2339) 문제 상황 Property 'map' does not exist on type ' '.ts(2339) 배열이 아닌 ' ' 를 map으로 돌리려고 했더니 나타난 타입 오류 해결 방법 배열 타입이 아니었던 arr의 타입을 제대로 정해서 map을 돌려야 한다. 해결 전 interface Aprops { name: string; arr: arrData; } // 중략 {arr.map((li: any) => { // } 해결 후 interface Aprops { name: string; arr: arrData[]; } // 중략 {arr.map((li: any) => { // } 2021. 10. 13. [백준] node.js / 1158 요세푸스 문제 처음 풀이 const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim().split(' '); let [n, k] = input.map((n) => parseInt(n)); let ansArr = []; const arr = Array.from({ length: n }, (v, i) => i + 1); for (let i = 0; i i + 1); let cnt = 0; while (arr.length > 0) { c.. 2021. 10. 12. [백준] JS/ 11399 ATM ㅜ내 풀이1 const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim().split('\n'); const line = input[1].split(' ').map(Number); const sortLine = line.sort((a, b) => a - b); let ans = 0; let prev = 0; sortLine.forEach((l) => { prev += l; ans += prev; }); console.log(ans); 1. 배열을 정렬한 후 2. 답에 더해줌 내 풀이2 const fs = require("fs"); const [n, input] = fs.readFileSync('/dev/std.. 2021. 10. 6. [백준] JS/ 1157 단어 공부 내 풀이 const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim(); let inputArr = input.split(''); let ans = {}; inputArr.forEach((i) => { let ui = i.toUpperCase(); if (ans[ui]) ans[ui] += 1; else ans[ui] = 1; }); let a = Object.keys(ans).sort((a, b) => { return ans[b] - ans[a]; }); if (a.length === 1) console.log(a[0]); else { if (ans[a[0]] !== ans[a[1]]) console.log.. 2021. 10. 5. [백준] JS/ 10808 알파벳 개수 내 풀이 const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim().split(''); let ans = new Array(26).fill(0); input.map((alpha) => { let alpha2Ascii = alpha.charCodeAt(0); ans[alpha2Ascii - 97] += 1; }); console.log(ans.join(' ')); 정말 단순히 받은 문자열을 배열로 돌며 Ascii로 바꿔주고 해당 배열의 idx-97 (a = 97)에 넣어주기! 다른 풀이 const s = require("fs").readFileSync("/dev/stdin").toString().split(.. 2021. 9. 30. [백준] JS/ 4949 균형잡힌 세상 ❖.실제 백준 풀이에서는 fs.readFileSync('./test') -> fs.readFileSync('./dev/stdin') 이렇게 고쳐서 생각해주세요 처음 풀이는 완전히 잘못 생각했다. 두개의 개수만 맞으면 된다고 생각해서 정규표현식으로 정성스럽게 이상한 코드를 써내려갔다..^^ 처음 풀이 ( 방향 완전 잘못 ) const fs = require('fs'); let input = (fs.readFileSync('./test') + '').toString().trim().split('.'); input.pop(); input.pop(); console.log(input); const regL = /\[/g; const regR = /\[/g; const regl = /\(/g; const regr.. 2021. 9. 29. 이전 1 ··· 3 4 5 6 7 8 9 ··· 23 다음 반응형