IT/알고리즘 / / 2017. 5. 29.

9465_스티커_DP

포스팅 목차

    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    public class _9465_스티커_DP {
    	public static void main(String args[]) throws IOException {
    		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    		int t = Integer.valueOf(br.readLine());
    		while (t-- > 0) {
    			int n = Integer.valueOf(br.readLine());
    			long[][] a = new long[n + 1][2];
    			{
    				String[] line = br.readLine().split(" ");
    				for (int i = 1; i <= n; i++) {
    					a[i][0] = Long.valueOf(line[i - 1]);
    				}
    			}
    			{
    				String[] line = br.readLine().split(" ");
    				for (int i = 1; i <= n; i++) {
    					a[i][1] = Long.valueOf(line[i - 1]);
    				}
    			}
    			long[][] d = new long[n + 1][3];
    			for (int i = 1; i <= n; i++) {
    				d[i][0] = Math.max(d[i - 1][0],
    						Math.max(d[i - 1][1], d[i - 1][2]));
    				d[i][1] = Math.max(d[i - 1][0], d[i - 1][2]) + a[i][0];
    				d[i][2] = Math.max(d[i - 1][0], d[i - 1][1]) + a[i][1];
    			}
    			long ans = 0;
    			ans = Math.max(d[n][0], Math.max(d[n][1], d[n][2]));
    			System.out.println(ans);
    		}
    	}
    }
    
    



    • 네이버 블로그 공유
    • 네이버 밴드 공유
    • 페이스북 공유
    • 카카오스토리 공유