일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 다리놓기
- 커스텀알락
- 타입스크립트
- 프로토타입
- 커스텀알림
- 백준
- nvm
- css
- Python
- Spread
- 리액트
- Rest
- 자바스크립트
- 파이어베이스로그인
- react-native
- JS
- 기초
- Next.js
- 파이썬
- yarn-berry
- youtube iframe
- mac
- firebaseui
- leetcode189
- iP
- 구조분해할당
- React
- nvmrc
- leetcode977
- react-firebaseui
- Today
- Total
목록다리놓기 (2)
JadeCode

https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 풀이법 다이나믹 프로그래밍 1. 30 * 30 배열을 만든다 2. 아래의 그림과 같이 생각한다. 코드 import sys input = sys.stdin.readline t = int(input()) dp = [[0 for _ in range(30)]for _ in range(30)] for i in range(1, 30): for j in range(1, 30): if i == 1: dp[i][..
//20210114 //다리놓기 //mCn const input = require("fs") .readFileSync("/dev/stdin") .toString() .trim() .split("\n"); // const input = `3 // 2 2 // 1 5 // 13 29 // `.split("\n"); const t = input[0].split(" ").map(Number); const dp = Array.from({ length: 30 }, () => Array.from({ length: 30 }, () => 0) ); for (let i = 1; i < 30; i++) { for (let j = 1; j < 30; j++) { if (i === 1) { dp[i][j] = j; } else..