페이지

2352번: 반도체 설계

https://www.acmicpc.net/problem/2352


#include<stdio.h>
#include<algorithm>
using namespace std;
int n, a[100000], sz;
int main() {
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
        scanf("%d", &a[i]);
    for (int i = 0; i < n; i++) {
        int p = upper_bound(a, a + sz, a[i]) - a;
        if (p == sz) sz++;
        a[p] = a[i];
    }
    printf("%d", sz);
    return 0;
}

댓글 없음 :

댓글 쓰기