cf744
Codeforces Round #385 (Div. 1)
<br >
A.Hongcow Builds A Nation
贪心。
显然就是凑成一个最大的块即可
那么首先并查集处理已经确定的点
然后把剩下不确定的放到点数最多的一个块中
最后统计边数即可
B.Hongcow's Game
交互题
交互的方法比较特殊。
每次二分一部分区域,然后将可以补充的填上
也就是把矩阵不断的切成四块,然后依次补上
可以把一些子询问合并
因为可能有一半已经有结果了,不会有所影响
举个例子(官方题解):
First level:
[1,2,3,4]
[5,6,7,8]
Second level
[1,2],[5,6] (i.e. ask 1,2,5,6 all together, but this is actually two different subproblems, one for the top left, and one for the bottom right).
[3,4],[7,8]
Third level
[1],[3],[5],[7]
[2],[4],[6],[8]
C.Hongcow Buys a Deck of Cards
n那么小,一看就是状压dp
但是似乎不能直接转移,因为每单位时间获取的金币的话,获取的是1个red和1个blue
那么,我们考虑,再记录下,到当前状态所节省的red
用f[i][j]表示状态为i, 到当前状态所节省了red,最多能节省blue的值
暴力转移即可
最后的答案显然就是 \(max(sr-i,sb-f[(1<<n)-1][i])\) 中的最小值
其中sr、sb为red和blue的和
cf744的更多相关文章
随机推荐
- CRC点滴
研究了一个晚上,大致看懂了crc校验的方法.这里记录一下,因为can总线中需要用到crc校验的. 举例说明CRC校验码的求法:(此例子摘自百度百科:CRC校验码) 信息字段代码为: 1011001:对 ...
- Linux网络编程:客户端/服务器的简单实现
一. Socket的基本知识 1. socket功能 Socket层次 Socket实质上提供了进程通信的端点,进程通信之前,双方必须首先各自创建一个端点,否则是没有办法建立联系并相互通信的. 每一个 ...
- 写iOS SDK注意事项
转载http://www.devtang.com/blog/2015/01/31/write-sdk-tips/
- day03_11 if语句实现猜年龄01
老男孩猜年龄游戏 age_of_princal = 56 guess_age = int( input(">>:") ) #以下为伪代码 ''' if guess_ag ...
- bat 文件读取乱码问题
使用 for 循环 type file1.txt > file2.txt 文件读取后可能会出现乱码,需要在 bat 文件中设置 chcp 表示将批处理设置为 utf-8 编码,这样在生成文件和读 ...
- PTA 11-散列1 电话聊天狂人 (25分)
题目地址 https://pta.patest.cn/pta/test/15/exam/4/question/722 5-14 电话聊天狂人 (25分) 给定大量手机用户通话记录,找出其中通话次数 ...
- struts拦截器详解
拦截器是Struts2最强大的特性之一,它是一种可以让用户在Action执行之前和Result执行之后进行一些功能处理的机制. 说到拦截器interceptor,就会想到过滤器filter: 过滤器f ...
- Centos7系统rc.local不起作用问题
Centos7系统rc.local不起作用问题 来源 https://www.cnblogs.com/xjz00/p/7729405.html Centos7已经写了要chmod +x /etc/rc ...
- HDU——2067小兔的棋盘(卡特兰数&递推DP)
小兔的棋盘 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- BZOJ 3786 星系探索 ——Splay
子树可以移动,唔. 还是用Splay维护DFS序即可. 子树的话直接截取出来就好了. 然后求前驱后继可能麻烦一些. 添加两个虚拟节点会比较好写. #include <map> #inclu ...