1 条题解
-
3
#pragma GCC optimize(3,"Ofast","inline") #include <bits/stdc++.h> using namespace std; #define int long long inline int read() { char ch=getchar(); int x=0,m=1; while(!isdigit(ch)){ if (ch=='-') m=-1; ch=getchar(); } while(isdigit(ch)){ x=x*10+ch-'0'; ch=getchar(); } return x*m; } inline void write(int x) { if (x<0) putchar('-'),x=-x; if (x>=10) write(x/10); putchar(x%10+'0'); } int n,w[1010]; struct Node{ int l,w; }a[1010]; inline bool cmp(Node x,Node y) { return x.l < y.l || ( x.l == y.l && x.w < y.w ); } signed main() { n=read(); for (int i=1;i<=n;i++) a[i].l=read(),a[i].w=read(); sort(a+1,a+1+n,cmp); int k=1; w[1]=a[1].w; for (int i=2;i<=n;i++){ int p=0; for (int j=1;j<=k;j++){ if (w[j]<=a[i].w){ if (!p) p=j; else if (w[j]>=w[p]) p=j; } } if (!p) w[++k]=a[i].w; else w[p]=a[i].w; } write(k); return 0; }
自行参考
- 1
信息
- ID
- 101
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- (无)
- 递交数
- 103
- 已通过
- 36
- 上传者