반응형
import java.io.*;
import java.util.*;
public class Main {
static int[] memo, arr;
static int n;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
n = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
arr = new int[n];
memo = new int[n];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
memo[0] = 1;
for (int i = 1; i < n; i++) {
memo[i]= 1;
for (int j = 0; j < i; j++) {
if(arr[i] < arr[j] && memo[j]+1 > memo[i]){
memo[i]=memo[j]+1;
}
}
System.out.println("memo = " + Arrays.toString(memo));
}
OptionalInt ans = Arrays.stream(memo).max();
System.out.println(ans.getAsInt());
}
}
java 8의 사용법을 익혀야겠다.
Optional에 관한 포스팅을 하겠다.
간단 참고
@Test
public void 숫자_array_max_값_찾기() {
int[] intArr = {3, 2, 6, 10, 234};
Integer maxValue = Arrays.stream(intArr)
.max()
.getAsInt();
assertThat(maxValue).isEqualTo(234);
}
@Test
public void array_str에서_가장_긴_string의_길이_찾기() {
String[] lines = {"Hello", "My", "World11"};
int maxWidth = Arrays.stream(lines).mapToInt(String::length).max().getAsInt();
assertThat(maxWidth).isEqualTo(7);
}
반응형
'코딩테스트 > Java' 카테고리의 다른 글
[JAVA] 백준 감소하는 수 (0) | 2022.02.06 |
---|---|
[JAVA] 백준 과자 나눠주기 (0) | 2022.02.02 |
[JAVA] 백준 구간 합 구하기 5 (0) | 2021.12.21 |
[JAVA] 백준 돌다리 (0) | 2021.12.21 |
[JAVA] 백준 양 (0) | 2021.12.14 |