NOIP2017提高组模拟22-雅礼国庆10.5
2017-11-03 20:39
369 查看
T1
题意:有m(<=1e4)层边,每层有k(<=10)个点,第一层只有一个点S,最后一层只有一个点T。然后整个图是一个DAG,可以一次取反相邻两层的边,问有多少种方案使得最后的S到T的路径数为偶数,有模数。
题解:用f【i】【j】表示做到第i层,路径数的奇偶性情况为j,如果是偶数为0,奇数为1。最后把状态中1 的个数为偶数的累加即可。
代码:http://paste.ubuntu.com/25879093/
T2
题意:给定n+1(n为偶数)个01串,每个串长度为2n,有n个1。
找到任意两个串,使得交的1的个数大于等于n2
题解:想想直接暴力做,是O(n364)的。但分析一波发现其实很难构造出跑满的数据,因此直接上,中途找到一组直接输出即可。
正解是随机……
代码:http://paste.ubuntu.com/25879353/
T3
题意:给定一棵树,在某些节点放一些灭火器,每个灭火器最多灭S(<=1e9)个点,每个点最多被隔K个单位距离的灭火器灭,问最少要多少个灭火器。
题解:首先贪心将灭火器放在越高越好。
用 g【x】【i】以x为根 距离为i 的需要灭火器房间个数
f【x】【i】以x为根 距离为i 的灭火器个数
做完儿子后,f【x】【i】=∑f【v】【i−1】(1<=i<=K),g同理。
且g【x】【0】=1
i==K时,不能再往上传递了,必须全部灭掉。
所以若g【x】【K】大于0,则用足量的灭火器。
因为对于某个点,如果有若干个灭火器可以灭到该点,那么其实用子树内的灭火器更好。
然后我们发现每次往上传递灭火器,相对距离+2,所以i+j==K或K-1时,要把子树内能灭掉的先灭掉。
最后在把根节点能灭掉的都灭掉。
代码:http://paste.ubuntu.com/25879359/
题意:有m(<=1e4)层边,每层有k(<=10)个点,第一层只有一个点S,最后一层只有一个点T。然后整个图是一个DAG,可以一次取反相邻两层的边,问有多少种方案使得最后的S到T的路径数为偶数,有模数。
题解:用f【i】【j】表示做到第i层,路径数的奇偶性情况为j,如果是偶数为0,奇数为1。最后把状态中1 的个数为偶数的累加即可。
代码:http://paste.ubuntu.com/25879093/
T2
题意:给定n+1(n为偶数)个01串,每个串长度为2n,有n个1。
找到任意两个串,使得交的1的个数大于等于n2
题解:想想直接暴力做,是O(n364)的。但分析一波发现其实很难构造出跑满的数据,因此直接上,中途找到一组直接输出即可。
正解是随机……
代码:http://paste.ubuntu.com/25879353/
T3
题意:给定一棵树,在某些节点放一些灭火器,每个灭火器最多灭S(<=1e9)个点,每个点最多被隔K个单位距离的灭火器灭,问最少要多少个灭火器。
题解:首先贪心将灭火器放在越高越好。
用 g【x】【i】以x为根 距离为i 的需要灭火器房间个数
f【x】【i】以x为根 距离为i 的灭火器个数
做完儿子后,f【x】【i】=∑f【v】【i−1】(1<=i<=K),g同理。
且g【x】【0】=1
i==K时,不能再往上传递了,必须全部灭掉。
所以若g【x】【K】大于0,则用足量的灭火器。
因为对于某个点,如果有若干个灭火器可以灭到该点,那么其实用子树内的灭火器更好。
然后我们发现每次往上传递灭火器,相对距离+2,所以i+j==K或K-1时,要把子树内能灭掉的先灭掉。
最后在把根节点能灭掉的都灭掉。
代码:http://paste.ubuntu.com/25879359/
相关文章推荐
- 【NOIP2017提高A组模拟10.5】Ping
- 【NOIP2017提高A组模拟10.5】Ping
- 【NOIP2017提高A组模拟10.5】Snake vs Block
- 【NOIP2017提高A组模拟10.5】Ping
- JZOJ5393【NOIP2017提高A组模拟10.5】Snake vs Block DP
- B【NOIP2017提高组模拟12.18】
- 【NOIP2017提高组模拟12.24】C
- 【NOIP2016提高A组模拟8.19】(雅礼联考day2)树上路径
- JZOJ 5392. 【NOIP2017提高A组模拟10.5】Lucky Transformation
- 【NOIP2017提高A组模拟7.13】abcd
- 【NOIP2017提高A组模拟8.22】世界线
- 【NOIP2017提高A组模拟8.23】密码
- 【NOIP2017提高A组模拟9.7】简单无向图 dp
- 【NOIP2017提高组模拟12.17】巧克力狂欢
- 【NOIP2017提高组模拟6.30】tty's maze
- 【NOIP2017提高组模拟12.17】环
- (前缀和排序)NOIP2017提高组模拟 Day1P1 小A的数学
- 【NOIP2017提高A组模拟8.22】时间机器
- 【NOIP2017提高组模拟12.18】B
- 【NOIP2016提高A组模拟8.17】(雅礼联考day1)Matrix