栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1420 Cashier Employment

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1420 Cashier Employment

#include <iostream>#include <cstring>#include <cstdio>#include <queue>#define REP(A,X) for(int A=0;A<X;A++)using namespace std;#define INF 0x7fffffff#define MAXN 10010struct node{    int v,d,next;}edge[MAXN];int head[110];int inihead[110];int e=0;void init(){    e=0;    REP(i,110)head[i]=-1;}void add_edge(int u,int v,int d){    edge[e].v=v;    edge[e].d=d;    edge[e].next=head[u];    head[u]=e;    e++;}int dis[MAXN];int vis[MAXN];int cnt[MAXN];int r[MAXN];int num[MAXN];int spfa(int mid){    REP(i,25)vis[i]=0;    REP(i,25)dis[i]=-INF;    REP(i,25)cnt[i]=0;    queue<int>q;    q.push(0);    vis[0]=1;    cnt[0]++;    dis[0]=0;    while(!q.empty())    {        int x=q.front();        q.pop();        for(int i=head[x];i!=-1;i=edge[i].next)        { int y=edge[i].v; int d=edge[i].d; if(dis[y]<dis[x]+d) {     dis[y]=dis[x]+d;     if(!vis[y])     {         q.push(y);         vis[y]=1;         cnt[y]++;         if(cnt[y]>25)return false;     } }        }        vis[x]=0;    }    return 1;}int main(){    ios::sync_with_stdio(false);    int t;    scanf("%d",&t);    while(t--)    {        REP(i,24)scanf("%d",&r[i+1]);        int n;        int a;        scanf("%d",&n);        REP(i,25)num[i+1]=0;        REP(i,n){ scanf("%d",&a); num[a+1]++;        }        init();        for(int i=1;i<=24;i++){ if(i>7)add_edge(i-8,i,r[i]); add_edge(i,i-1,-num[i]); add_edge(i-1,i,0);        }        int tempe=e;        REP(i,25)inihead[i]=head[i];        int x=0,y=n;        int ans=INF;        while(x<y)        { e=tempe; int mid=(x+y)/2; REP(i,25) head[i]=inihead[i]; for(int i=1;i<8;i++) add_edge(i+16,i,r[i]-mid); add_edge(0,24,mid); if(spfa(mid)){     y=mid;     ans=min(mid,ans); } else{     x=mid+1; }        }        if(ans>n)printf("No Solutionn");        else printf("%dn",ans);    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/378062.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号