CF
文章平均质量分 73
小胡子Haso
~~
展开
-
【CF 514D】 R2D2 and Droid Army (线段树、RMQ)
【CF 514D】 R2D2 and Droid Armyn个机器人 m把枪 每个怪物对应每把枪都有一定的血量 m个血槽都空机器人才挂掉m把枪一共有k发子弹 问怎么打可以杀死最多的连续的机器人 子弹可以剩余1~n遍历 统计当前区间最大值 如果m血槽最大值的和>k时 左边界右移一位 重新统计输出最长序列的打法即可这题用RMQ也可以 代码量能少点 他们还有加二分优化的 二分区间长度原创 2015-08-22 18:39:24 · 1310 阅读 · 0 评论 -
【CF 617E】 XOR and Favorite Number (Mo's algorithm)
【CF 617E】 XOR and Favorite Number (Mo's algorithm)E. XOR and Favorite Numbertime limit per test4 secondsmemory limit per test256 megabytesinputstandard inputoutp原创 2016-01-26 11:29:43 · 1837 阅读 · 0 评论 -
【CF ECR8-D】Magic Numbers(数位dp)
【CF ECR8-D】Magic Numbers(数位dp)D. Magic Numberstime limit per test:2 secondsmemory limit per test:256 megabytesinput:standard inputoutput:standard outputCo原创 2016-02-20 10:41:24 · 1950 阅读 · 0 评论 -
【CF 675D】 Tree Construction(离线二分+左右指针)
【CF 675D】 Tree Construction(离线二分+左右指针)D. Tree Constructiontime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputsta原创 2016-05-17 18:03:31 · 3120 阅读 · 0 评论 -
【CF】Codeforces Round #361 (Div. 2)
难得有想法写一整套题解首先想说的是,这场CF,我感觉是div2极为不错的一场(对于中档选手说笑了,感觉这一场很耐人寻味。就是那种抓破头皮想不出,知道做法后细细品味,有种 哦~~~~~这样啊~~~~好神奇!!! 的感觉首先。。秀一下战绩不多说了 都在题里↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓A. Mike and Cellphone原创 2016-07-09 17:06:18 · 1853 阅读 · 0 评论 -
【CF 699B】One Bomb(思维)
【CF 699B】One Bomb(思维)B. One Bombtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are giv原创 2016-07-20 08:38:28 · 1027 阅读 · 0 评论 -
【CF 698B】Fix a Tree(dfs)
【CF 699D】Fix a Tree(dfs)D. Fix a Treetime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA tree is a原创 2016-07-20 08:49:26 · 1522 阅读 · 0 评论 -
【CF 698C】 LRU(概率DP)
【CF 698C】 LRU(概率DP)C. LRUtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputWhile creating hi原创 2016-07-20 10:36:56 · 2331 阅读 · 2 评论 -
【CF 708C】Centroids(树型DP)
C. Centroidstime limit per test4 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputTree is a connected acyclic graph. Suppose you are given a tree consisting of n vertice原创 2016-08-25 14:23:02 · 1847 阅读 · 5 评论 -
【CF 140E】New Year Garland(第二类斯特林(Stirling)数+DP+容斥)
【CF 140E】New Year Garland(第二类斯特林(Stirling)数+DP+容斥)E. New Year Garlandtime limit per test5 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputAs Gerald, Alexander, Sergey原创 2016-08-08 14:45:08 · 1411 阅读 · 0 评论 -
【CF 149D】Coloring Brackets(dp)
【CF 149D】Coloring Brackets(dp)D. Coloring Bracketstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputOnce Petya read a problem about a bracket sequen原创 2016-08-10 14:46:57 · 1247 阅读 · 0 评论 -
【CF 708B】Recover the String(组合+瞎搞)
B. Recover the String time limit per test 1 second memory limit per test 256 megabytes input standard input outputstandard output For each string s co原创 2016-08-25 13:47:48 · 1010 阅读 · 1 评论 -
【CF 732F】 Tourist Reform(割边+dfs)
【CF 732F】 Tourist Reform(割边+dfs)题目大意: n个点m条无向边。 定义rir_i为从点i出发能遍历到的点的数量。要求给每个边确定方向,让min(ri)min(r_i)最大。 输出最大的min(ri)min(r_i)以及每条边的方向。考虑对于双连通子图,一定存在方案使每个点都能遍历到图中所有的点。 那么将所有双连通(即无桥)的图锁点,就变成了好几颗树。对于每个点,原创 2016-10-20 18:07:33 · 1288 阅读 · 1 评论 -
【CF 550E】 Brackets in Implications(贪心)
【CF 550E】 Brackets in Implications(贪心)E. Brackets in Implicationstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutp原创 2015-11-29 10:50:01 · 1094 阅读 · 0 评论 -
【CF 508D】 Tanya and Password (判欧拉路+输出欧拉路径)
【CF 508D】 Tanya and Password (判欧拉路+输出欧拉路径)D. Tanya and Passwordtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutput原创 2015-10-29 20:52:22 · 2248 阅读 · 1 评论 -
【CF 450A】 Jzzhu and Children
【CF 450A】 Jzzhu and Children发糖 n个小盆(屁)友(孩) 站好队 第i个人想要ai颗糖 但坏叔蜀一个人一次只发m个糖 还想要就要到队尾排队 领够糖的就走开 问最后走的小朋友是谁队列比较好想 我用了除法 第i个小朋友要领(ai+m-1)/m次 领取次数最多并且初始位置最靠后的肯定最后走代码如下:#include #include using原创 2015-08-22 18:56:07 · 714 阅读 · 0 评论 -
【CF 453A】 Little Pony and Expected Maximum (最大期望)
【CF 453A】 Little Pony and Expected Maximum (最大期望)推一下可以发现掷出i的概率为 (i/m)^n-((i-1)/m)^n这样递推求值即可 注意直接先求比再求幂 分子分母分开的话会爆 说了误差不超1e-4即可 不必担心精度代码如下:#include #include #include #include #define原创 2015-08-23 00:02:09 · 813 阅读 · 0 评论 -
【CF 515D】 Drazil and Tiles
【CF 515D】 Drazil and Tiles拓扑的思想 如果满足条件 ‘.’未遍历完之前肯定存在度为1的点(上下左右仅有一个’.’)遍历到一个1度点u时 将与他连的点v用对应括号括起 此时v也已匹配 入度归零 同时将与v相连的其余点入度减1 不断遍历知道遍历完所有’.’ 若能遍历完 则满足条件否则无解或多解 (吐槽一下 原本用的纯粹拓扑思路 想想也是绝对要T的。。后来改换BFS代码如下:原创 2015-08-08 18:40:34 · 987 阅读 · 0 评论 -
【CF 459D】 Pashmak and Parmida's problem
【CF 459D】 Pashmak and Parmida’s problem原创 2015-08-08 18:33:35 · 1030 阅读 · 0 评论 -
【CF 520D】Cubes
【CF 520D】Cubes原创 2015-08-02 22:02:00 · 1144 阅读 · 0 评论 -
【CF 566F】 Clique in the Divisibility Graph
【CF 566F】 Clique in the Divisibility Graph原创 2015-08-02 19:02:11 · 1155 阅读 · 0 评论 -
【CF 507E】Breaking Good
【CF 507E】Breaking Good双条件最短路 每个路有已搭建和未搭建两种状态 需要把经过的路都建起 为经过的路都拆掉 优先经过最少条路 同样少的路走改动(搭建+拆掉)最小的最短路跑完后把最短的路上的路径标记一下 bfs输出拆除和搭建 在最短路径上的路 未建的搭建 不在的建好的拆掉通过此题试了一下spfa的一个小优化还有dijkstra的优先队列优化 不过别看spfa加优化快了点原创 2015-08-17 10:30:36 · 1168 阅读 · 0 评论 -
【CF 460C】Present
【CF 460C】Present二分+贪心 二分最矮高度的最大值 每二分一个遍历看是否可达 可达low = mid+1不可达high = mid-1 可达的判断用贪心即可 改点长度不足时 在改点设置浇水点 同是在i+w设置断水 之后每个点都继承前一个点的浇水量 到i+w时减少i处浇的水即可代码如下:#include <iostream>#include <cstdio>#include <cst原创 2015-08-16 21:13:20 · 1408 阅读 · 0 评论 -
【CF 474E】Pillars
【CF 474E】Pillars离散化+线段树dp大半夜写出来了。。。好长好长好长好长好挫……先把高度排序离散化 我又开了个哈希数组用来查某点对应离散后的点 然后遍历每个点时二分出满足题意的区间(1~h-d)(h+d~max) 然后线段树查两个区间当前最大长度的序列 累计到当前点对应的树内点 同时更新他的父亲点们的最大长度 再把之前最大长度的末尾作为当前点的前驱 如果没有就用当前点自己做前驱 最后输原创 2015-08-17 00:51:26 · 1203 阅读 · 0 评论 -
【CF 570D】Tree Requests
【CF 570D】Tree Requests树节点标号递增 规定父亲标号<儿子 dfs重标号 同时用一个数组存该节点为根的树的最小节点 一个数组存该节点为树根的最大节点 一个数组存对应深度存在的节点 再来一个数组存每一位置累计字符(26个字符 由于偶数次可压缩 故用异或即可) 每查询一个节点和他对应的深度 只需在该深度查该节点为根的最小和最大节点 然后用左右节点字符累计数互相异或 最后看它二进原创 2015-08-17 15:12:42 · 995 阅读 · 0 评论 -
【CF 570E】Pig and Palindromes
【CF 570E】Pig and Palindromes三维dp 找对应步数的组合数目 二三维分别表示离1,1 和 n,m该步数的回文种类 如果吧状态数都存下内存太大 开个滚动dp数组(最近刚学的)代码如下:#include <iostream>#include <cstdio>#include <cstring>#define mod 1000000007#define ll long l原创 2015-08-18 21:35:11 · 958 阅读 · 0 评论 -
【CF 484B】 Maximum Value (mod)
【CF 484B】 Maximum Value一组数 从中取两个数大的对小的取余 问最大的余数是多少初始化1~max的数组 数组里存序列中小于该数组当前下标的最大的数找的时候枚举序列中的数的2、3、4...倍 对应的数组中以2、3、4*x为下标的数对x取余后得到的最大的数就是以x为模序列中的数取余后的MAX每个数这么遍历一遍即可代码如下:#include #inc原创 2015-08-22 18:48:55 · 1111 阅读 · 0 评论 -
【CF 732E】Sockets(优先队列+贪心)
【CF 732E】Sockets(优先队列+贪心)题目大意: n台电脑,m个供电器。 每台电脑和每个供电器都有电量,当电脑i的电量和供电器j电量相同时,可以连接供电。现在提供变压器,可以连接到供电器上,每个变压器会将电量变为⌈x2⌉\lceil \frac{x}{2} \rceil变压器可以累加。提供无限个变压器。现在问最多能使多少台电脑供上电,输出最多的可供电电脑数,最少使用的变压器数。之后输原创 2016-10-20 18:47:49 · 954 阅读 · 1 评论