【BZOJ】【P1293】【SCOI2009】【生日礼物】【题解】【水题】

来源:互联网 发布:手机淘宝如何升级版本 编辑:程序博客网 时间:2024/06/07 09:45

传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1293

排完序扫一遍,没了

最近刷水太多了唉……

Code:

#include<bits/stdc++.h>#define fst first#define sec secondusing namespace std;const int maxn=1e6+5;typedef pair<int,int> par;int n,k,tot,ans=INT_MAX;int T[61],cnt[61],col;par a[maxn];int main(){scanf("%d%d",&n,&k);for(int i=1;i<=k;i++){scanf("%d",&T[i]);for(int j=1;j<=T[i];j++){tot++;scanf("%d",&a[tot].fst);a[tot].sec=i;}}sort(a+1,a+1+n);for(int i=1,j=1;i<=n&&j<=n;){while(i<=n&&col!=k)col+=!cnt[a[i++].sec]++;while(j<=n&&col==k){ans=min(ans,a[i-1].fst-a[j].fst);col-=!--cnt[a[j++].sec];}}cout<<ans<<endl;return 0;}


0 0
原创粉丝点击