삐까냥의 파도타기

Q1965. 상자넣기 본문

코딩/백준 알고리즘

Q1965. 상자넣기

금손형아 2019. 2. 18. 22:53

가장 긴 증가수열 코드 문제 로직과 같습니다.


import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.util.StringTokenizer;


public class Main {


static long[][] dp;

public static void main(String[] args) throws Exception {

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

StringTokenizer st = new StringTokenizer(br.readLine());

int num = Integer.parseInt(st.nextToken());

dp = new long[2][num+1];

st = new StringTokenizer(br.readLine());

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

dp[0][i] = Integer.parseInt(st.nextToken());

}


long maxValue = 0;

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

long inputNum = 0;

for (int j = i+1; j <= num; j++) {

if (dp[0][i] < dp[0][j]) {

if (inputNum == 0 || dp[0][j] < inputNum) {

inputNum = dp[0][j];

dp[1][j] = Math.max(dp[1][j], dp[1][i]+1);

maxValue = Math.max(maxValue, dp[1][j]);

}

}

}

}

System.out.println(maxValue+1);

}


'코딩 > 백준 알고리즘' 카테고리의 다른 글

Q1309. 동물원  (0) 2019.02.21
Q11054. 가장 긴 바이토닉 부분 수열  (0) 2019.02.19
Q14501. 퇴사  (0) 2019.02.17
Q11052. 카드 구매하기  (0) 2019.02.17
Q2156. 포도주 시식  (0) 2019.02.16