codevs 1028 花店橱窗布置
来源:互联网 发布:2017网络使用人数 编辑:程序博客网 时间:2024/04/28 09:49
网络流二分图匹配
题目描述 Description假设以最美观的方式布置花店的橱窗,有F束花,V个花瓶,我们用美学值(一个整数)表示每束花放入每个花瓶所产生的美学效果。为了取得最佳的美学效果,必须使花的摆放取得最大的美学值。
输入描述 Input Description第一行为两个整数F,V(F<=V<=100)
接下来F行每行V个整数,第i行第j个数表示第i束花放入第j个花瓶的美学值。
输出描述 Output Description一个整数,即最大美学值。
样例输入 Sample Input2 2
10 0
5 2
样例输出 Sample Output12
#include<cstdio>#include<cstring>#include<iostream>#include<queue>using namespace std;#define INF 99999999int n,m,c[250][250],v[250][250],s,t,pre[500];bool spfa(){ bool vis[205]={0}; int dis[205]; memset(dis,6,sizeof(dis)); queue<int>q; q.push(s); vis[s]=1; dis[s]=0; int k; while(!q.empty()){ k=q.front(); q.pop(); vis[k]=0; for(int i=0;i<=t;i++) if(v[k][i]&&dis[i]>c[k][i]+dis[k]){ dis[i]=c[k][i]+dis[k]; pre[i]=k; if(!vis[i]){ q.push(i); vis[i]=1; } } } return dis[t]!=dis[204];}int maxflow(){ int ans=0; while(spfa()){ for(int i=t;i!=s;i=pre[i]){ ans+=c[pre[i]][i]; v[pre[i]][i]--; v[i][pre[i]]++; } } return -ans;}int main(){ scanf("%d%d",&n,&m); s=0; t=n+m+1; memset(v,0,sizeof(v)); v[s][s]=1; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ scanf("%d",&c[j+n][i]); c[i][j+n]=-c[j+n][i]; v[i][j+n]++; c[j+n][t]=0; v[j+n][t]=1; } c[s][i]=0; v[s][i]=1; } cout<<maxflow()<<endl;}
0 0
- 【CodeVS 1028】 花店橱窗布置
- codevs 1028 花店橱窗布置
- codevs 1028 花店橱窗布置 最小费用最大流
- 【wikioi】1028花店橱窗布置
- CODE[VS]1028 花店橱窗布置
- 花店橱窗布置问题
- RQNOJ 花店橱窗布置
- 花店橱窗布置(IOI)
- 【DP】 花店橱窗布置
- IOI 花店橱窗布置
- 花店橱窗布置
- 花店橱窗布置【DP】
- P1854 花店橱窗布置
- 花店橱窗布置
- 【动态规划】花店橱窗布置
- DP之花店橱窗布置
- [Tyvj 1124]花店橱窗布置
- 花店橱窗布置【动态规划】
- org.springframework.boot.test.SpringApplicationConfiguration;
- Android闹钟(AlarmManager)
- BZOJ 1002 [FJOI2007] 轮状病毒
- Wireshark过滤器tips
- Sketch 清理自动保存的缓存文件
- codevs 1028 花店橱窗布置
- python3 No module named ‘MySQLdb’
- 数据库连接:操作数据增删改查
- error while loading shared libraries: libcudart.so.8.0: cannot open shared object file: No such file
- 最长回文子串——Manacher算法
- hive中order by,sort by, distribute by, cluster by作用以及用法
- 338. Counting Bits 和191. Number of 1 Bits
- 最近公共祖先LCA模板(Tarjan/RMQ)
- Excel 有哪些可能需要熟练掌握而很多人不会的技能?