빨간색 대각선 파란색 대각선 비교 더 큰것을 입력한다.
package basic;
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer;
public class Sticker {
public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int n = new Integer(br.readLine()); while(n-->0){ int m = new Integer(br.readLine()); int arr[][] = new int [3][m+1]; for(int i=1;i<3;i++){ StringTokenizer st = new StringTokenizer(br.readLine()); for(int j=1;j<m+1;j++){ arr[i][j] = new Integer(st.nextToken()); } } int dp[][] = new int [3][m+1]; dp[1][1] = arr[1][1]; dp[2][1] = arr[2][1]; for(int j=2;j<m+1;j++){ dp[1][j] = Math.max(dp[2][j-1], dp[2][j-2])+arr[1][j]; //첫번쨰 대각선 짧은 대각선 dp[2][j] = Math.max(dp[1][j-1], dp[1][j-2])+arr[2][j]; //두번째 대각선 긴 대각선 } bw.write(Math.max(dp[1][m], dp[2][m])+"\n"); } bw.close(); }
}
|
'알고리즘구현능력 > 문제해결능력' 카테고리의 다른 글
[java] 백준/11057 오르막 수 (0) | 2019.04.09 |
---|---|
[java] 백준/9461 파도반수열 (0) | 2019.04.09 |
[java] 백준/2163 초콜릿자르기 (0) | 2019.04.08 |
[java] 백준/1010 다리놓기 (0) | 2019.04.05 |
[java] 백준/11052 카드구매하기 (0) | 2019.04.05 |