코드와이
[BAEKJOON] 2352. 반도체 설계 본문
문제링크
https://www.acmicpc.net/problem/2352
2352번: 반도체 설계
첫째 줄에 정수 n(1 ≤ n ≤ 40,000)이 주어진다. 다음 줄에는 차례로 1번 포트와 연결되어야 하는 포트 번호, 2번 포트와 연결되어야 하는 포트 번호, …, n번 포트와 연결되어야 하는 포트 번호가 주
www.acmicpc.net
'[BAEKJOON] 가장 긴 증가부분 수열2' 문제와 유사
package acmicpc.Gold2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
public class 반도체_설계 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
st = new StringTokenizer(br.readLine());
List<Integer> list = new ArrayList<>();
list.add(-1);
for(int i = 0 ; i < n ; i++) {
int x = Integer.parseInt(st.nextToken());
if(x > list.get(list.size()-1)) list.add(x);
else {
int low = 1;
int high = list.size()-1;
while(low < high) {
int mid = (low + high) / 2;
if(list.get(mid) < x) {
low = mid + 1;
} else {
high = mid;
}
}
list.set(low, x);
}
}
System.out.println(list.size()-1);
}
}
'acmicpc' 카테고리의 다른 글
[BAEKJOON] 2250. 트리의 높이와 너비 (0) | 2021.06.02 |
---|---|
[BAEKJOON] 12738. 가장 긴 증가부분 수열3 (0) | 2021.05.29 |
[BAEKJOON] 2225. 합분해 (0) | 2021.05.27 |
[BAEKJOON] 3055. 탈출 (0) | 2021.05.27 |
[BAEKJOON] 1107. 리모컨 (0) | 2021.05.27 |