Tags
- ๊ตฌํ
- Python
- Study
- sort
- ๋ฌธ์์ด
- stack
- ๊ต์ฌ
- ์๋ฃ๊ตฌ์กฐ
- queue
- PGM
- ์๋ฎฌ๋ ์ด์
- ๋ฐฑํธ๋ํน
- SpringBoot
- ๊น์ด ์ฐ์ ํ์
- ์ํ
- ์ ์๋ก
- CodingTest
- ์ ๋ ฌ
- BOJ
- ๊ทธ๋ํ ์ด๋ก
- LV2
- DP
- Dynamic Programming
- greedy
- Brute Force Algorithm
- dfs
- BFS
- ๋๋น ์ฐ์ ํ์
- ๊ทธ๋ํ ํ์
- Java
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_1010 : ๋ค๋ฆฌ ๋๊ธฐ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- N๊ฐ์ ์์ชฝ ์ง์ ์์ M๊ฐ์ ์ค๋ฅธ์ชฝ ์ง์ ์ผ๋ก ๋ค๋ฆฌ๋ฅผ ์ฐ๊ฒฐ ํ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ค.
- ๋ค๋ฆฌ๋ ์๋ก ๊ฒน์น ์ ์๋ค.
- ํ ์ง์ ์ ํ๋์ ๋ค๋ฆฌ๋ง ๋์ผ ์ ์๋ค.
- ์กฐํฉ์ผ๋ก ์ ๊ทผํ ์ ์๋ค.
- N <= M ์์ ๋ค๋ฆฌ๋ฅผ ๊ฐ์ฅ ๋ง์ด ๋์ผ๋ ค๋ฉด N๊ฐ๋ฅผ ๋์์ผ ํ๋ค.
- M๊ฐ์์ N๊ฐ๋ฅผ ์ ํํด์ผํ๋ฉฐ ์ค๋ณต๋์ง ์์์ผ ํ๋ค. (mCn)
- ์กฐํฉ์ ์์๋ฅผ ๊ณ ๋ คํ์ง ์์ผ๋ฏ๋ก ๋ค๋ฆฌ๊ฐ ๊ฒน์น๋ฉด ์๋๋ค๋ ์กฐ๊ฑด์ ์๊ด์์ด์ง๋ค.
- ์กฐํฉ์ ์ฑ์ง์ ์ด์ฉํด ๋ฉ๋ชจ์ด์ ์ด์
์ผ๋ก ๋์ ๊ณํ๋ฒ์ ์ฌ์ฉํ ์ ์๋ค.
- n C 0 = n C n = 1
- n+1 C r+1 = n C r + n C r+1 ์ด๋ฏ๋ก,
n C r = n-1 C r-1 + n-1 C r ์ด ๊ฐ๋ฅํ๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = null;
int[][] dp = new int[30][30];
for (int i = 0; i < 30; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || i==j) dp[j][i] = 1;
else {
dp[j][i] = dp[j-1][i-1] + dp[j][i-1];
}
}
}
int T = Integer.parseInt(br.readLine());
for (int t = 0; t < T; t++) {
st = new StringTokenizer(br.readLine());
System.out.println(dp[Integer.parseInt(st.nextToken())][Integer.parseInt(st.nextToken())]);
}
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ์ ์กฐํฉ์ ์ฑ์ง ๊ณต์์ ๋ฐํ ์ ๋ฐฉ์์ผ๋ก ๊ตฌํํ๋ฉด dp๋ฐฐ์ด์ ์ฑ์๊ฐ๋ ๋ฐฉ์์ผ๋ก ๋ต์ ๊ตฌํ ์ ์๋ค.
๐ธ end ๐ธ
- ์กฐํฉ์ ์ฌ๊ท๋ก ์ ๊ทผํ๋ฉด ๊ทธ๋ ๊ฒ ์ด๋ ต์ง ์์ง๋ง, ๋ฉ๋ชจ์ด์ ์ด์ ์ ์ํด dp๋ฐฐ์ด์ ๋ฐํ ์ ๋ฐฉ์์ผ๋ก ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์กฐํฉ ๊ณต์์ ์ ํ์๊ฐ ์์ด์ ํฌ์คํ ์ ์ฐธ๊ณ ํ๋ค. (์ฐธ๊ณ ํฌ์คํ )
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_1600 : ๋ง์ด ๋๊ณ ํ ์์ญ์ด (0) | 2023.04.06 |
---|---|
BOJ_10971 : ์ธํ์ ์ํ 2 (0) | 2023.04.06 |
BOJ_1463 : 1๋ก ๋ง๋ค๊ธฐ (0) | 2023.03.30 |
BOJ_7662 : ์ด์ค ์ฐ์ ์์ ํ (0) | 2023.03.29 |
BOJ_5430 : AC (0) | 2023.03.28 |