목록전체 글 (144)
언젠가는 펼쳐 볼 아카이브
1) Iterator - Iterable 하다는 것은, 순회가 가능하다는 것을 뜻함 - Iterator 조건 1 : Iterable 프로토콜을 따라야함 - Iterator 조건 2 : Symbol.iterator() 함수를 호출했을 때, Iterable 프로토콜을 따르는 객체를 반환해야 함 >> 즉, 심볼 정의를 가진 객체나, 특정한 함수가 Iterator를 리턴하는 객체는 순회 가능한 객체! [Symbol.iterator()] : Iterator { next(): {value, done}}; - Iterable 하면 for of, spread 사용 가능 2) Generator - Iterable 프로토콜을 따르고 Iterator 객체를 반환함 - 따라서 ".value" , ".done" 값을 가지고 있..
사용언어 : javascript - node.js 벌집의 개수가 늘어나는 숫자를 봤을때 아래처럼 증가한다 숫자 벌집의개수 1 1개 2 ~ 7 2개 8 ~ 19 3개 20 ~ 37 4개 38 ~ 61 5개 벌집의 개수가 늘어나기 직전의 숫자들만 보면, 1 -> 7 -> 19 -> 37 -> 61 ... 이런식으로 늘어난다. 늘어나는 값의 규칙성을 확인해보면 6n(육면체 벌집)에 앞의 값을 더한 값이라는걸 볼 알 수 있다. 1 (6*1) -> 7 (6*1+1) -> 19(6*2+7) -> 37(6*3+19) -> 61(6*4+37) ... 요 규칙성을 코드로 옮겨서 풀면 될거 같음! #제출코드 const fs = require('fs'); const filePath = process.platform === ..
사용언어 : javascript - node.js #제출 코드 const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt'; const input = fs.readFileSync(filePath).toString().trim(); solution1(+input); function solution1(num) { let dots = 2; // 규칙성을 보았을 때, // (이전 점의 개수 + 2 ** 점을 찍은 횟수) 의 제곱으로 나타남 // 사각형이 1개일 때, 점의 개수가 4이므로 초기 값은 2. // 시작은 2부터, (이전 index + 현재 index)를 주어진 입력값 만큼 하고 ..
사용언어 : 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'); const testCase = +input.shift(); let testArr = input.map((item) => +item); solution(testCase, testArr); function solution(testCase, testArr) { const coins = [25, 10, 5, 1]; testArr.forEach(..