BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));



int num = Integer.parseInt(br.readLine());
int[] p = new int[num+1];
int[] dp = new int[num+1];


for(int i =0;i<num;i++) {

p[i]=Integer.parseInt(br.readLine());

}



dp[0]=0;
dp[1]=p[1];
if(num>1)
dp[2]=p[1]+p[2];

for(int i=3;i<=num;i++) {

dp[i]=Math.max(dp[i-1],Math.max(dp[i-2]+p[i],dp[i-3]+p[i-1]+p[i]));

}


bw.write(dp[num]+"\n");



bw.flush();
br.close();
bw.close();
}

 

 

참고한 블로그

https://debuglog.tistory.com/80

'알고리즘' 카테고리의 다른 글

백준 10818번 자바(JAVA)  (0) 2019.10.15
백준 11721 자바(JAVA)  (0) 2019.10.14
백준 11719 자바(JAVA)  (0) 2019.10.14
백준 11718 자바(JAVA)  (0) 2019.10.14
백준 10818번 자바(JAVA)  (0) 2019.10.14

+ Recent posts