티스토리 뷰

1. 문제

https://www.acmicpc.net/problem/9461

 

9461번: 파도반 수열

문제 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 �

www.acmicpc.net

 

2. 설명

점화식이 dp[n] = dp[n-1] + dp[n-5] 였다.

또한 n의 범위가 100까지이기 때문에 int형으로 dp를 선언하면 틀렸다고 나온다.

이부분은 항상 헷갈린당;

 

3. 코드

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

public class Main {
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		int T = Integer.parseInt(st.nextToken());
		int[] n = new int[T];
		long[] dp = new long[101];
		
		for(int i=0; i<T; i++) {
			st = new StringTokenizer(br.readLine());
			n[i] = Integer.parseInt(st.nextToken());
		}
		
		dp[1] = 1;
		dp[2] = 1;
		dp[3] = 1;
		dp[4] = 2;
		
		for(int i=0; i<T; i++) {
			for(int j=5; j<=n[i]; j++) {
				dp[j] = dp[j-1] + dp[j-5];
			}
			System.out.println(dp[n[i]]);
		}
	}
}

'알고리즘 풀이 > 백준' 카테고리의 다른 글

백준 1049 기타줄 JAVA  (0) 2020.07.30
백준 2217 로프 JAVA  (0) 2020.07.29
백준 11727 2xn 타일링 2 JAVA (DP)  (0) 2020.07.18
백준 10844 쉬운 계단 수 JAVA (DP)  (0) 2020.07.11
백준 1912 연속합 JAVA (DP)  (0) 2020.07.08
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday