摘要: "LINK" 题目大意 给你一个序列和一个值x 问你用某种方式对序列安排顺序之后一次对x取mod~~膜~~的最大值和方案数 首先发现一个性质 一个数之后所有比它大的数都没有贡献 考虑怎么利用这个性质? 就可以从小到大插入每一个数 然后就开开心心的发现每次插入的数如果有贡献一定是在第一个,否则可以在任 阅读全文
posted @ 2018-11-05 23:32 Dream_maker_yk 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 小Q有n本书,每本书有一个独一无二的编号,现在它们正零乱地在地上排成了一排。 小Q希望把这一排书分成恰好k段,使得每段至少有一本书,然后把每段按照现在的顺序依次放到k层书架的每一层上去。将所有书都放到书架上后,小Q这才突然意识到它们是乱序的,他只好把每一层的书分别按照编号 从小到大排序。排序每次可以 阅读全文
posted @ 2018-11-05 20:22 Dream_maker_yk 阅读(310) 评论(0) 推荐(0) 编辑
摘要: "LINK" 题目大意 给你一个序列分成k段 每一段的代价是满足$(a_i=a_j)$的无序数对$(i,j)$的个数 求最小的代价 思路 首先有一个暴力dp的思路是$dp_{i,k}=min(dp_{j,k}+calc(j+1,i))$ 然后看看怎么优化 证明一下这个DP的决策单调性: trz说可以 阅读全文
posted @ 2018-11-05 20:15 Dream_maker_yk 阅读(441) 评论(0) 推荐(0) 编辑
摘要: Description 有N个村庄坐落在一条直线上,第i(i 1)个村庄距离第1个村庄的距离为Di。需要在这些村庄中建立不超过K个通讯基站,在第i个村庄建立基站的费用为Ci。如果在距离第i个村庄不超过Si的范围内建立了一个通讯基站,那么就成它被覆盖了。如果第i个村庄没有被覆盖,则需要向他们补偿,费用 阅读全文
posted @ 2018-11-05 17:21 Dream_maker_yk 阅读(485) 评论(0) 推荐(1) 编辑
摘要: "LINK" 题目大意 给你一个数组,问你数组中的每个数是否可以在数组里面找到一个数和他and起来是0,如果可以就输出这个数,否则就输出 1 思路 首先很显然的是可以考虑找到每个数每一位都取反的数的子集 如果子集中存在一个数就满足,否则就不满足 然后就做一个子集前缀和 c++ for (int i 阅读全文
posted @ 2018-11-05 13:13 Dream_maker_yk 阅读(279) 评论(0) 推荐(0) 编辑
摘要: Description 小宇从历史书上了解到一个古老的文明。这个文明在各个方面高度发达,交通方面也不例外。考古学家已经知道,这个文明在全盛时期有n座城市,编号为1..n。m条道路连接在这些城市之间,每条道路将两个城市连接起来,使得两地的居民可以方便地来往。一对城市之间可能存在多条道路。 据史料记载, 阅读全文
posted @ 2018-11-05 11:32 Dream_maker_yk 阅读(189) 评论(0) 推荐(0) 编辑
摘要: "LINK" 题目大意 有一个 n 行 m 列的格点图,你需要给每个点上染上 k 种颜色中的一种,要求没有两个相邻点颜色相同。给定第一行与最后一行的染色,试求总染色方案数。 思路 暴力预处理状态暴力转移可以得到80分的高分 这个时候司来了一句: 不要按行转移,按块转移就A了 于是改改改写了一个轮廓线 阅读全文
posted @ 2018-11-05 09:40 Dream_maker_yk 阅读(277) 评论(0) 推荐(0) 编辑