๋ฐ์ํ
https://codeforces.com/problemset/problem/509/A
์ฝ๋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int[][] arr = new int[n][n];
if(n == 1) {
System.out.println(1);
return;
}
// 1ํ์ ๊ฐ๋ค์ 1 ... 0,0 ~ 0,n = 1
for(int i=0; i<1; i++)
for(int j=0; j<n; j++)
arr[i][j] = 1;
// iํ์ ์ฒซ๋ฒ์งธ ์ด์ ๋ชจ๋ 1 ... (0,0) , (1,0) ~ (n,0) = 1
for(int i=0; i<n; i++)
for(int j=0; j<1; j++)
arr[i][j] = 1;
// ์์์ ์ ์ธํ ๋๋จธ์ง ํ์ ๊ท์น์ ๋ฐ๋ผ ์ ์ฅ
for(int i=1; i<n; i++)
for(int j=1; j<n; j++)
arr[i][j] = arr[i-1][j] + arr[i][j-1];
// ํญ์ ๋ง์ง๋ง ๊ฐ์ด ์ ค ํผ
System.out.println(arr[n-1][n-1]);
scan.close();
}
}
ํ์ด
๋ฌธ์ ์์ ์ฃผ์ด์ง ์กฐ๊ฑด์ ๋ค์๊ณผ ๊ฐ๋ค
์ฒซ๋ฒ์งธ ํ๊ณผ ์ฒซ๋ฒ์งธ ์ด๋ค์ 1์ด๋ค.
๊ทธ ์ธ์ ํ์ด๋ค์ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ค. arr[i][j] = arr[i-1][j] + arr[i][j-1]
๋ฐ๋ผ์ ์ ์กฐ๊ฑด์ ๊ทธ๋๋ก ์ฒซ๋ฒ์งธ ํ๋ค์ 1๋ก ์ค์ ํ๋ค.
for(int i=0; i<1; i++)
for(int j=0; j<n; j++)
arr[i][j] = 1;
๊ทธ ํ ๋ชจ๋ ํ์ ์ฒซ๋ฒ์งธ ์ด๋ค์ 1๋ก ์ค์ ํ๋ค.
for(int i=0; i<n; i++)
for(int j=0; j<1; j++)
arr[i][j] = 1;
๋๋จธ์ง ํ, ์ด๋ค์ ๊ท์น์ ๋ฐ๋ผ ์ค์ ํ๋ค.
for(int i=1; i<n; i++)
for(int j=1; j<n; j++)
arr[i][j] = arr[i-1][j] + arr[i][j-1];
๊ฐ์ฅ ํฐ ๊ฐ์ ๊ฐ์ฅ ๋ง์ง๋ง ์ธ๋ฑ์ค์ ๊ฐ์ด๋ฏ๋ก arr[n-1][n-1] ์ ์ถ๋ ฅํ๋ค.
๋ฐ์ํ
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 1912๋ฒ: ์ฐ์ํฉ(DP) (0) | 2020.03.05 |
---|---|
[๋ฐฑ์ค] 3985๋ฒ: ๋กค ์ผ์ดํฌ(๊ตฌํ, ์๋ฎฌ๋ ์ด์ ) (0) | 2020.03.05 |
[๋ฐฑ์ค] 1551๋ฒ: ์์ด์ ๋ณํ(์ํ, ์๋ฎฌ๋ ์ด์ ) (0) | 2020.03.04 |
[๋ฐฑ์ค] 1526๋ฒ: ๊ฐ์ฅ ํฐ ๊ธ๋ฏผ์(์๋ฎฌ๋ ์ด์ ) (0) | 2020.03.04 |
[๋ฐฑ์ค] 2563๋ฒ: ์์ข ์ด(์์ ํ์, ๊ตฌํ) (0) | 2020.03.04 |
๋๊ธ