90分求助!

P1233 木棍加工

```cpp #include<bits/stdc++.h> using namespace std; int n,k,p,f[10005]; struct aug { int l; int w; }a[5001]; int cmp(aug a,aug b) { return a.l>b.l; } int main() { // freopen("stick.in","r",stdin); // freopen("stick.out","w",stdout); cin>>n; for(int i=1;i<=n;i++)cin>>a[i].l>>a[i].w; sort(a+1,a+1+n,cmp); k=1; f[k]=a[1].w; for(int i=2;i<=n;i++) { p=0; for(int j=1;j<=k;j++) if(f[j]>=a[i].w) { if(p==0)p=j; else if(f[j]<f[p])p=j; } if(p==0) { k++; f[k]=a[i].w; } else f[p]=a[i].w; } cout<<k; return 0; } ``` # 请勿抄袭 # 仅供参考!!
by 操作! @ 2019-07-09 18:38:17


我也是第八个点错了,然后输入的时候,宽度长度反着输入就对了,很迷茫
by 三又二分之一 @ 2019-07-13 19:25:43


sort没有考虑w相同的情况
by lovelive__ @ 2019-07-13 20:53:57


|