์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

๐Ÿ“ [G5_2133] ํƒ€์ผ ์ฑ„์šฐ๊ธฐ

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	static int[] dp;
	static int N;
	static int res;
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		N = Integer.parseInt(br.readLine());
		
		dp = new int[N+2];
		dp[0] = 1;
		dp[2] = 3;

		if(N>=4) {
			for(int i=4; i<=N; i++) {
				dp[i] += dp[i-2]*dp[2];
				for(int j = 4; j <= i; j += 2) {
					dp[i] += dp[i-j]*2;
				}
			}
		}
		System.out.println(dp[N]);
	}
}

๐Ÿค” ๋‚˜์˜ ์ƒ๊ฐ

dp ๋ฌธ์ œ์ด๋‹ค.
ํƒ€์ผ์˜ ๋ชจ๋“  ์นธ์„ ์ฑ„์šฐ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š”๋ฐ ํ™€์ˆ˜ ์ธ ๊ฒฝ์šฐ๋Š” ์ œ์™ธํ•œ๋‹ค. ๊ฐ€๋“์ฐจ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
๊ทธ๋ž˜์„œ ๊ตฌ์กฐ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ๋จผ์ € 3*2์ผ ๋•Œ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์กฐ๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค.


์ด ๊ตฌ์กฐ 3๊ฐœ๊ฐ€ ๋ฐ˜๋ณต๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  3*4 ์ผ ๋•Œ ๊ตฌ์กฐ์ด๋‹ค.


์ด ๊ฒƒ์„ ๋ณด๋ฉด ์œ„์˜ 3๊ฐ€์ง€ ๊ตฌ์กฐ๊ฐ€ ๋ฐ˜๋ณต๋˜์–ด ๋‚˜์˜ค๋Š”๊ฑฐ์— ์ƒˆ๋กœ์šด ๋ชจ์–‘ 2๊ฐœ๊ฐ€ ์ถ”๊ฐ€ ๋œ๋‹ค.

3*6 ๊นŒ์ง€ ๋ณด์•˜์„ ๋•Œ ๊ตฌ์กฐ๋ฅผ ํŒŒ์•…ํ•ด๋ณด๋ฉด
dp[n-2] * 3 + dp[n-4] * 2 + dp[n-6] ๊ฒฝ์šฐ์˜์ˆ˜ * 2 + โ€ฆ + dp[0] * 2 ์ด๋ผ๋Š” ์‹์ด ๋‚˜์˜จ๋‹ค.
์ด๊ฒƒ์„ ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ์œ„์— ํฌ๋ฌธ์ด ๋œ๋‹ค.





์ž˜ ์ดํ•ด๊ฐ€ ์•ˆ๋œ๋‹ค๋ฉด ์ฐธ๊ณ ํ•˜๋„๋กโ€ฆ
https://kosaf04pyh.tistory.com/236

ํƒœ๊ทธ: , , ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ: