考试认证
UVALive 标签描述

大体题意: 给你一个nn的棋盘,有一定量的黑棋(相当于障碍)!,让你放尽可能多的白棋(皇后),使得任意两个白棋不能相互攻击! 思路: 想暴力的,结果也没搞出来! 发现有6ms过得,原来不是暴力! 请教了学长! 可以这样考虑: 对于每一个可以放白棋的地方,把他不能攻击到的地方相连,这样最终会得到一个无向图,两个点能连通代表了两个棋子不能相互吃掉! 最后求一个解使得任意两个棋子都不能相互吃掉!那不就是任意两个点都相互连通吗! 这不就是一个完全图吗! 所以这个问题转换成了求一个最大的完全图的数量! 最大团模板 include<cstdio> include<cstring&gt...

  gSHLoS4ND9Hs   2023年11月02日   21   0   0 C++算法ListUVALive最大团

大体题意: 给你n个玩具,把n个玩具放到三个箱子里面,每个玩具有个标号每天玩一个玩具,每次玩时,你都要把那一箱玩具搬出来,求出玩完所有的玩具至少搬多少重量的玩具! 思路: 题意转换一下就是求,如何把n个数分配成三组, 使得每一组的质量和乘以数量 的总和最小! 没有找到确切的规律! 那就枚举把! 既然把玩具分成三组,肯定是质量相近的越好, 所以要先排个序! 分成三组需要两个分界线! 先枚举第一个分界线! 想想会发现 第二个分界线左右是个凹凸性的函数,存在一个极值! 在第一个分界线后三分第二个分界线,找到一个值最小的位置! 注意,这样在算某个箱子时,利用前...

  gSHLoS4ND9Hs   2023年11月02日   42   0   0 C++算法#includeUVALivec语言