본문 바로가기

백준128

[백준 9655/javascript] 돌 게임 다이나믹 프로그래밍 문제 경우의 수를 처음부터 세어보면 Math.min(arr[i - 1] + 1, arr[i - 3] + 1) 위와 같은 점화식을 얻을 수 있다 https://www.acmicpc.net/problem/9655 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net let input = []; const readline = require("readline").createInterface({ input: process.stdin, output: process.stdout, }); readline.on("line", (line) => { input.push(line); }); readline.on("close", () =>.. 2022. 10. 1.
[백준 4659/javascript] 비밀번호 발음하기 문자열이 조건에 부합하는지를 묻는 문제는 정규표현식 문제로 바로 보인다 하지만 3번째 케이스에서 정규표현식으로 표현 기호를 찾지 못해서 시간을 꽤 날렸다 ()로 캡쳐된 것을 참조해서 중복으로 여러번 쓰고자 할때 ()\반복할숫자 예 ) /(tokki)\1/ === /(tokki)(tokki)/​ 위와 같이 사용하면 괄호 안 캡쳐 내용을 중복으로 쓸 수 있다 https://www.acmicpc.net/problem/4659 4659번: 비밀번호 발음하기 좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtp www.acmicpc.net let input = []; cons.. 2022. 9. 30.
[백준 14606/javascript] 피자 1부터 경우의 수를 세보면 1일때 0 2일때 1 3일때 3 4일때 6 임을 알 수 있다 위 결과와 n개일 때 n-1 개와 1개로 나눌때를 생각해보면 n-1 개도 각각 나눠질수 있다는걸 생각하면 f(n) = (n - 1) + f(n - 1) 라는 점화식을 찾을 수 있다 결과를 배열에 아래서부터 넣어주면 된다 다이나믹 프로그래밍 문제이다 https://www.acmicpc.net/problem/14606 14606번: 피자 (Small) 예제1의 입력이 1이므로, 게임 시작부터 갑이 분리할 수 있는 피자탑이 없습니다. 따라서 갑이 얻는 즐거움은 0입니다. 예제2의 정답 3은 다음과 같은 과정을 통해 얻어집니다. 먼저 놀이를 시작 www.acmicpc.net let input = []; const readli.. 2022. 9. 29.
[백준 11727/javascript] 2Xn 타일링 2 다이나믹 프로그래밍 문제 n = 1 일때부터 경우의 수를 구해서 규칙을 찾아보면 n 의 경우의 수 = (n - 1 의 경우의 수) + (n - 2 의 경우의 수) * 2 의 규칙을 갖는 것을 알 수 있다 나머지는 매 경우마다 구해주고 배열에 bottom up 방식으로 채워나가 완성해주자 https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net let input = []; const readline = require("readline").createInterface({ input: p.. 2022. 9. 28.