博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 6667 Roundgod and Milk Tea
阅读量:5312 次
发布时间:2019-06-14

本文共 941 字,大约阅读时间需要 3 分钟。

  • Time limit

    6000 ms

  • Memory limit

    131072 kB

  • OS

    Windows

  • Source

吐槽

比赛时候一眼网络流,但数据范围显然不行,又看到这道题提交人数贼多,于是转向尝试各种贪心,什么两边都取最大值、一边取最大值另一边取最小值、两边都取最小值……很多贪心方法都自己出数据hack掉了,想不到怎么hack的思路再写网络流生成随机数据对拍,拍几百组没错再交,但还是WA个不停……比赛时这题最终通过率0.5%

赛后知道离散数学里有个东西叫做Hall定理,是匈牙利的理论基础,然而之前我们并不知道这么个东西……菜啊……等下学期离散学到这个再来填坑

能百度到的题解,看上去比较靠谱的都和hall定理沾边了,其他的贪心都没有证明,靠“显然”这类字眼蒙混过关,总感觉只是数据水放过去了,应该会被hack……

题解

官方题解——

1161304-20190820204647400-1287998507.png

可以算是官方题解的翻译

另外还有两个貌似(因为我还没看懂,留坑)靠hall定理保证正确性的“贪心”

源代码

#include
#include
const int MAXN=1e6+5;int T;int n;long long a[MAXN],b[MAXN];int main(){ scanf("%d",&T); while(T--) { scanf("%d",&n); a[0]=b[0]=0; for(int i=1;i<=n;i++) scanf("%lld%lld",a+i,b+i),a[0]+=a[i],b[0]+=b[i]; long long ans=std::min(a[0],b[0]); for(int i=1;i<=n;i++) ans=std::min(ans,a[0]+b[0]-a[i]-b[i]); printf("%lld\n",ans); } return 0;}

留坑:总有一天我要整理一下这个博客混乱的标签

转载于:https://www.cnblogs.com/wawcac-blog/p/11385600.html

你可能感兴趣的文章
jQuery总结或者锋利的jQuery笔记二
查看>>
前后端协作--服务器渲染与前后端分离
查看>>
微软职位内部推荐-Sr. SE - Office incubation
查看>>
微软职位内部推荐-SOFTWARE ENGINEER II
查看>>
GDB调试
查看>>
centos系统python2.7更新到3.5
查看>>
一个通用的单元测试框架的思考和设计09-实现篇-视图操作
查看>>
30:Path Sum
查看>>
43: Construct Binary Tree from Preorder and Inorder Traversal
查看>>
CentOS6 下MySQL option file
查看>>
最优矩阵连乘
查看>>
通过淘宝接口免费获取IP地址信息
查看>>
Java面向对象概述及三大特征(封装,继承和多态)
查看>>
tcp下载器
查看>>
springcloud微服务总结六
查看>>
实验三 结对项目 加密与解密程序
查看>>
通过几个Hello World感受.NET Core全新的开发体验
查看>>
.NET Core跨平台的奥秘[中篇]:复用之殇
查看>>
<排序算法> 简单选择排序SelectSort
查看>>
es6在网页中模块引入的方法
查看>>