본문 바로가기

코딩테스트 연습25

[백준] 2579번 계단 오르기 (JavaScript) https://www.acmicpc.net/problem/2579const input = require('fs').readFileSync(process.platform === 'linux' ? '/dev/stdin' : './input.txt') .toString().trim().split('\n').map(Number);let N = input.shift();let answer = [input[0], input[0]+input[1], Math.max(input[0], input[1])+ input[2]];for(let i = 3; i  마지막 계단을 오르기 전까지의 최댓값 + 마지막 계단 값 = 총점수의 최댓값이다.마지막 계단을 오를 수 있는 경우의 수는 2가지이다.1. o o x o   2. o .. 2024. 4. 30.
[백준] 1003번 피보나치 함수 (JavaScript) https://www.acmicpc.net/problem/1003const input = require('fs') .readFileSync(process.platform === 'linux' ? '/dev/stdin' : './input.txt') .toString() .trim() .split('\n') .map(Number);let N = input[0];let answer = [ [1, 0], [0, 1],];for (let i = 1; i  피보나치 함수 규칙에 따라서 0과 1이 나오는 횟수를 더 해주면 된다. 2024. 4. 30.
[백준] 1463번 1로 만들기 (JavaScript) https://www.acmicpc.net/problem/1463const input = require('fs') .readFileSync(process.platform === 'linux' ? '/dev/stdin' : './input.txt') .toString() .trim() .split('\n') .map(Number);let N = input[0];let answer = ['', 0, 1, 1];for (let i = 4; i  계산이 되는 앞 단계의 최소 횟수에서 +1 하면 답이다. 3과 2로 모두 나눠지는 경우 3으로 나눴을 때와 2로 나눴을 때의 계산 횟수 중 최솟값에서 + 1을 하면된다.ex) 6인 경우 둘 다 나눠지기 때문에 3인 경우 + 1 과 2인 경우 + 1을 비교하여 .. 2024. 4. 30.
[백준] 2606번 바이러스(JavaScript) https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net // const input = require("fs").readFileSync("/dev/stdin").toString().trim().split("\n"); function dfs(graph, startNode) { const visited = []; let needVisit = []; needVisit.push(startNode); while (needVisit.length !== 0) { cons.. 2024. 1. 17.