본문 바로가기
반응형

분류 전체보기201

[백준] 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.
[백준] JS/ 10798 세로읽기 내 풀이1(오답) const fs = require('fs'); let input = (fs.readFileSync('./dev/stdin') + '').split('\n'); let ans = ''; const wordArr = input.map((i) => i.split('')); const turnCnt = wordArr.length; let allCnt = 0; while (allCnt { if (word[0] !== undefined) ans += word.shift(); else allCnt += 1; }); } console.log(ans); 1. 글자를 위와 같은 이중배열로 생성 2. 이 배열의 길이 => 개수로 두고 3.. 2021. 9. 29.
반응형