题目链接题意 :每一颗子弹破坏了三个邻近的阳台。(第N个阳台是与第1个相邻)射击后后的生存的怪物都对主角造成伤害- 如此,直到所有的怪物被消灭,求怎样射击才能受到最少伤害。思路 : 状压,数据不是很大,可以爆一爆,或者DFS下去就行,枚举每一种状态。 1 //1152 2 #include 3 #....
分类:
其他好文 时间:
2014-08-31 21:21:51
阅读次数:
236
题目来源:URAL 1141. RSA Attack
题意:给你e n c 并且有m^e = c(mod n) 求 m
思路:首先学习RSA算法
here
过程大致是
1.发送的信息是m
2.随机选择两个质数 p和q, n = q*p, n的欧拉函数值φ(n)= (p-1)*(q-1)这个需要证明
3.选择一个与φ(n)互质的并且小于φ(n)的数e, 计算c = m^e(mod...
分类:
其他好文 时间:
2014-08-31 15:52:31
阅读次数:
262
题目来源:URAL 1204. Idempotents
题意:输入n(n = p*q p,q是质数) 并且x*x=x(mod n) 求x
思路: x*x=x(mod n) -> x*x+k*n=x -> x*(x-1)/n = k 所以 0 和 1 是一组解 因为n = p*q 且x*(x-1)%(p*q)== 0 x
1.x有p因子x-1有q因子
x%p == 0且(x-1)%q =...
分类:
其他好文 时间:
2014-08-31 14:33:11
阅读次数:
203
题目来源:URAL 1019. Line Painting
题意:求最长的一段全部为白色的区间
思路:线段树成段更新 区间合并 离散化 这里对应的是一段区间 所以每次不是m+1 而是 l m 和 m r 了 另外我加上了0 和 10^9 这两个点
每一段区间(l, r)我记录的是l和r之间有多少条线段
#include
#include
#include
using namesp...
分类:
其他好文 时间:
2014-08-31 14:31:41
阅读次数:
197
题目来源:URAL 1732 . Ministry of Truth
题意:把第一个字符串处理一下 变成第二个 不要的字符改成下划线 空格不能改
思路:对第二个字符串单词分割 得到每一个单词后从第一个字符串中匹配 匹配成功 记录当前匹配的位置 然后下一个单词从x+2处在匹配 知道所有的单词都被匹配到
鄙视自己没想清楚写了半天 最后发现题目意思都错了
改了很多 最后代码和原来...
分类:
其他好文 时间:
2014-08-30 11:17:59
阅读次数:
131
题目来源:URAL 1176. Hyperchannels
题意:求补图的欧拉回路
思路:模版
#include
#include
#include
using namespace std;
const int maxm = 40010;
const int maxn = 1010;
int first[maxn], cnt;
struct edge
{
int u, v, next...
分类:
其他好文 时间:
2014-08-29 16:02:48
阅读次数:
162
1500. Pass LicensesTime limit: 2.5 secondMemory limit: 64 MBA New Russian Kolyan believes that to spend his time in traffic jams is below his dignity....
分类:
其他好文 时间:
2014-08-28 11:01:19
阅读次数:
303
1096. Get the Right Route Plate!
Time limit: 1.0 second
Memory limit: 64 MB
Everybody who had ridden a Ekaterinburg bus could notice that on the inner side of the plate with the number of t...
分类:
其他好文 时间:
2014-08-28 09:43:49
阅读次数:
331
http://acm.timus.ru/problem.aspx?space=1&num=1303
给出一些区间,选择尽量少的区间能覆盖到[0,m]。
小白p154,典型的区间覆盖问题。一直在想怎么dp。。
首先预处理,先按左端点从小到大排序,若左端点相同右端点从大到小排序,若区间x完全包含y,按照贪心的思想,y是没有意义的,有大区间可以选何必选择小区间。处理完事之后各个区间满足a1...
分类:
其他好文 时间:
2014-08-26 23:03:26
阅读次数:
414
http://acm.timus.ru/problem.aspx?space=1&num=1635
给出一个字符串,将这个字符串分成尽量少的回文串。
起初没有思路,想着应该先预处理出所有的回文串,然后进行dp。但是字符串的长度是4000,O(n^3)肯定不行,其实可以转化为O(n^2),就是枚举中点而不是枚举起点和终点,又NC了吧。
然后就是线性的dp了。dp[i]表示到第i...
分类:
其他好文 时间:
2014-08-26 17:31:46
阅读次数:
218