Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
35997 | xujindong | 友好城市 | C++ | 通过 | 100 | 1 MS | 312 KB | 538 | 2021-12-18 21:02:57 |
#include<bits/stdc++.h> using namespace std; struct node { int north,south; } a[200005]; int n,i,d[200005],len,temp,f1,f2; bool cmp(node x,node y) { return x.north<y.north; } int main () { scanf("%d%d",&f1,&f2); scanf("%d",&n); for(i=1; i<=n; i++) scanf("%d%d",&a[i].north,&a[i].south); sort(a+1,a+1+n,cmp); d[++len]=a[1].south; for(i=2; i<=n; i++) { int ll=upper_bound(d+1,d+len+1,a[i].south)-d; d[ll]=a[i].south; if(ll>len) len++; } printf("%d",len); return 0; }