Programming/Algorithm
-
[백준]1065번 한수 with Node.jsProgramming/Algorithm 2022. 4. 7. 15:03
// const input = require('fs').readFileSync('/dev/stdin').toString().trim().split(' '); const input = require('fs').readFileSync('./testInput.txt').toString().trim().split(' '); const N = Number(input[0]); function solution(N) { //한수란, 어떠한 양의 정수가 한개 있을때 그 수의 각 자릿수가 등차수열을 이루는 것이다. //따라서 문제 해결의 핵심은 수를 자릿수 별로 분해하여 등차수열을 이루는지 확인하는 것이다. let result = 0; for(let i=1; i
-
[백준]2884번 알람시계 with Node.jsProgramming/Algorithm 2022. 3. 31. 23:16
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split(" "); // const input = require('fs').readFileSync('./testInput.txt').toString().trim().split(" "); function solution(H, M) { // let hour = Number(H); let minute = Number(M)-45; if(0 > minute){ //45를 뺀 값이 음수이면 시간을 빼고, 이때 시간이 음수가되면 24를 더해준다, 분 또한 음수면 60을 더해준다. hour--; if(hour < 0)hour += 24; minute += 60; console.log(ho..
-
[백준]1003번 피보나치 함수 with Node.jsProgramming/Algorithm 2022. 3. 19. 17:05
//피보나치함수 // const input = require('fs').readFileSync('/dev/stdin').toString().trim().split("\n"); const input=[8,0,1,2,3,4,5,6,22];//첫번째 값은 테스트 케이스의 개수 T const T = input.shift(); for (let i = 0; i < T; i++) { //배열 맨 앞의 값을 가져와 그 크기 만큼 반복 //최소값은 0을 넣었을 때 0이 한번 나오기 때문에 디폴트 1로 세팅 let one = 0, zero = 1; for (let j = 1; j
-
[완전탐색]알고리즘 with Node.jsProgramming/Algorithm 2022. 2. 10. 14:13
const a = [0]; function solution(numbers) { // let answer = ''; numbers.sort().reverse(); answer = combin(numbers, ''); return answer; }; function combin(data, str) { // let num = new Array; if (data.length) { // for (let i in data) { // num = [...data]; num.splice(i, 1); combin(num, str + data[i]); }; }; if (str > a[0]) a.splice(0, 1, str); return a[0]; };