목록전체 글 (144)
언젠가는 펼쳐 볼 아카이브
사용언어 : javascript - node.js #제출 코드 const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt'; const [n, k] = fs .readFileSync(filePath) .toString() .trim() .split(' ') .map((item) => +item); solution(n, k); function solution(n, k) { let factors = []; let answer = 0; for (let i = 1; i = k) { answer = factors[k - 1]; } console.log(answer); }
사용언어 : javascript - node.js # 제출 코드 const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt'; const input = fs.readFileSync(filePath).toString().trim().split('\n'); for (let i = 0; i +item); if (a === 0 && b === 0) { break; } solution(a, b); } function solution(a, b) { if..
사용언어 : javascript - node.js ## 문제 분석 1. 달팽이가 아침에 올라가고 밤에 미끄러진 경우 >> 하루에 총 이동한 거리 : A(아침에 올라간 거리) - B(밤에 미끄러진 거리) . 2. 달팽이가 정상에 도착하면 미끄러지지 않고 바로 끝남. 즉 하루가 지나고 다음날 아침에 바로 정상에 도착할 때를 고려해야함. - (A(아침에 올라간 거리) - B(밤에 미끄러진 거리)) * day = V(전체 높이) >> 이럴 경우, 아침에 미끄러지지 않은 경우는 고려되지 않음 - (A(아침에 올라간 거리) - B(밤에 미끄러진 거리)) * day + B(밤에 미끄러진 거리) = V(전체 높이) >> 아침에 미끄러지지 않은 경우를 고려하여 미끄러진 거리만큼 더해주기 3. (A(아침에 올라간 거리) ..
사용언어 : javascript - node.js 자바스크립트로 푼 알고리즘 문제 중 처음으로 다른 사람이 푼 문제방법으로 문제를 풀었다. 문제를 이해하고 규칙성은 찾았으나, 어떻게 접근해야할 지 모르겠어서 찾아보았다. (한 문제에 질질 끌리는 것보단 빠르게 넘어가는게 좋을 것 같아서.) 확인한 규칙성은 아래와 같음 여기까진 알아냈는데.. X번째 분자/분모가 감이 안와서 찾아보니 이걸 왜 생각 못했지..라는 생각이 든다. 1. 입력한 X는 소속된 라인그룹(1,2,3...)안에 있으며, 앞의 분수들의 번호는 현재 소속된 라인그룹을 다 더한 값이다 >> 그렇다면 라인그룹 1부터 n-1번 숫자를 더한 값을 이용해 X가 어떤 라인 그룹에 속해 있는지 알 수 있음 2. X에서 앞선 라인그룹을 더한값을 빼면, 해당..