336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
public class Stolen {
public int solution(int[] money) {
int answer = 0;
int length = money.length;
if(length == 3) {
answer = Math.max(Math.max(money[0], money[1]),money[2]);
}else if(length == 4){
answer = Math.max(money[0]+money[2],money[1]+money[3]);
}else {
int dp1[] = Arrays.copyOf(money, length);
int dp2[] = Arrays.copyOf(money, length);
dp1[length-4] = dp1[length-4] + dp1[length-2];
for(int i=length-5; i>=0; i--) {
dp1[i] = dp1[i] + Math.max(dp1[i+2], dp1[i+3]);
}
System.out.println(length);
System.out.println(dp2.length);
dp2[length-3] = dp2[length-3]+ dp2[length-1];
for(int i=length-4; i>=1; i--) {
dp2[i] = dp2[i] + Math.max(dp2[i+2], dp2[i+3]);
}
answer = Math.max(dp1[0], dp2[1]);
}
return answer;
}
public static void main(String[] args) {
int[] money = {1,2,3,1,5,9,1};
new Stolen().solution(money);
}
}
'IT > Java' 카테고리의 다른 글
자바 ArrayList<Object> 정렬 (0) | 2020.09.23 |
---|---|
자바 서버/클라이언트 소켓통신 예제 (0) | 2020.09.22 |
프로그래머스 DFS 네트워크 (0) | 2020.08.10 |
자바 EXE 파일 실행 및 데이터 전달 (0) | 2020.07.14 |
자바 소켓서버 Thread 사용하여 다중요청처리 (0) | 2020.07.14 |