04 2012 档案

bjoi 2011 符环 动态规划
摘要:题意:在可以炼制魔力强大的法杖的同时,Magic Land 上的人们渐渐意识到,魔力强大并不一定能给人们带来好处——反而,由此产生的破坏性的高魔力释放,给整个大陆蒙上了恐怖的阴影。 可控的魔力释放,成为了人们新的追求。这种控制魔力释放的技术,也就是被现在的我们熟知的“魔法”。在远古时期,“魔法”由法师们口口相传,但也因为这样,很多“古代魔法”已经成为传说——因为那时没有良好的记录魔法的方法。 后来,天才法师Ferdinand 发现了一种记录魔法的方法:将一种特殊材料做成的正反面均有 1行 N列格子的带子的一端扭转 180度之后与另一端粘贴,这样就得到了一个仅有一面的环,被称为“符环” (Spe 阅读全文

posted @ 2012-04-16 22:36 myoi 阅读(499) 评论(0) 推荐(1)

zjoi 2008 movement 无序运动 AC自动机
摘要:题意:无序运动【问题描述】 D博士对物理有着深入的研究,经典物理、天体物理、量子物理都有着以他的名字命名的定理。最近D博士着迷于研究粒子运动的无规则性。对圣经深信不疑的他相信,上帝创造的任何事物必然是有序的、有理可循的,而不是无规则的、混沌的。 经过长时间的研究,D博士找到了很多出现相当频繁的轨迹片断,他把这些轨迹片断储存在一个很大的数据库内。他需要你帮助他写一个程序,对于一个给出的粒子运动轨迹,统计数据库中每个轨迹片断的出现的次数。 为清楚起见,我们定义一个粒子的轨迹为二维平面上的一个点列(P1, P2, … PN)。点列P的一个子列[i, j]定义为P中一段连续的子序列(Pi, Pi+1, 阅读全文

posted @ 2012-04-15 18:22 myoi 阅读(829) 评论(1) 推荐(0)

bjoi 2010 外星联络 后缀数组
摘要:题意:小 P 在看过电影《超时空接触》(Contact)之后被深深的打动,决心致力于寻 找外星人的事业。于是,他每天晚上都爬在屋顶上试图用自己的收音机收听外星 人发来的信息。虽然他收听到的仅仅是一些噪声,但是他还是按照这些噪声的高 低电平将接收到的信号改写为由 0 和 1 构成的串, 并坚信外星人的信息就隐藏在 其中。他认为,外星人发来的信息一定会在他接受到的 01 串中重复出现,所以 他希望找到他接受到的 01 串中所有重复出现次数大于 1 的子串。但是他收到的 信号串实在是太长了,于是,他希望你能编一个程序来帮助他。思路:后缀数组求出height,从前往后扫 1 #include<i 阅读全文

posted @ 2012-04-12 17:33 myoi 阅读(294) 评论(0) 推荐(0)

bjoi 2010 矩阵距离 BFS
摘要:思路:BFS 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<cstring> 5 #include<algorithm> 6 using namespace std; 7 #define MAXN 1100 8 int d[MAXN][MAXN]; 9 char a[MAXN][MAXN];10 pair<int,int> Q[MAXN*MAXN];11 int n,m;12 int main()13 {14 int left=1, 阅读全文

posted @ 2012-04-11 21:10 myoi 阅读(276) 评论(0) 推荐(0)

bjoi 2010 纸箱堆叠 二维树状数组
摘要:题意:P 工厂是一个生产纸箱的工厂。纸箱生产线在人工输入三个参数 n p a , , 之后,即可自动化生产三边边长为(a mod P,a^2 mod p,a^3 mod P)(a^4 mod p,a^5 mod p,a^6 mod P)....(a^(3n-2) mod p,a^(3n-1) mod p,a^(3n) mod p)的n个纸箱。在运输这些纸箱时,为了节约空间,必须将它们嵌套堆叠起来。一个纸箱可以嵌套堆叠进另一个纸箱当且仅当它的最短边、次短边和最长边长度分别严格小于另一个纸箱的最短边、次短边和最长边长度。这里不考虑任何旋转后在对角线方向的嵌套堆叠。你的任务是找出这n个纸箱中数量最多 阅读全文

posted @ 2012-04-10 20:16 myoi 阅读(558) 评论(0) 推荐(0)

zjoi 2008 tower 瞭望塔 半平面交
摘要:题意: 致力于建设全国示范和谐小村庄的H村村长dadzhi,决定在村中建立一个瞭望塔,以此加强村中的治安。我们将H村抽象为一维的轮廓。如下图所示 我们可以用一条山的上方轮廓折线(x1, y1), (x2, y2), …. (xn, yn)来描述H村的形状,这里x1 < x2 < …< xn。瞭望塔可以建造在[x1, xn]间的任意位置, 但必须满足从瞭望塔的顶端可以看到H村的任意位置。可见在不同的位置建造瞭望塔,所需要建造的高度是不同的。为了节省开支,dadzhi村长希望建造的塔高度尽可能小。请你写一个程序,帮助dadzhi村长计算塔的最小高度。思路:半平面交 1 #incl 阅读全文

posted @ 2012-04-08 11:36 myoi 阅读(371) 评论(0) 推荐(0)

ceoi 2011 Matching kmp
摘要:题意:给定一个长度为n的排列,m个数,要求在m个数中选出一段长度为n的数串,使得选出的数串与给定的排列是匹配的。匹配的定义:设给定的排列为A,选出的数串为B,要满足B[A[i]]在数串中排第i小。思路:扩展KMP O(n) 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<cmath> 5 using namespace std; 6 #define MAXN 1000000+100 7 int b[MAXN],a[MAXN],p[MAXN],home[M 阅读全文

posted @ 2012-04-07 21:15 myoi 阅读(386) 评论(0) 推荐(0)

poj 1755 Triathlon 半平面交
摘要:题意:在铁人三项比赛中,给出每个人游泳,骑车,跑步的速度,你可以任意安排游泳,骑车,跑步的路程(路程非0),若某人可以获得第一(严格),则输出Yes,否则No思路:半平面交固定一个项目的路程为1,另两个项目的路程为未知数x,y对于每个人,依次判断其是否有可能为第一每个人 建立n-1个方程 求半平面交 若有解 则Yes,否则No 1 #include<iostream> 2 #include<cmath> 3 #include<cstring> 4 #include<vector> 5 #include<cstdio> 6 using 阅读全文

posted @ 2012-04-07 19:43 myoi 阅读(1181) 评论(0) 推荐(0)

zjoi 2008 knight 骑士 图论+动态规划
摘要:【问题描述】 Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英。他们劫富济贫,惩恶扬善,受到社会各界的赞扬。 最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争。战火绵延五百里,在和平环境中安逸了数百年的Z国又怎能抵挡的住Y国的军队。于是人们把所有的希望都寄托在了骑士团的身上,就像期待有一个真龙天子的降生,带领正义打败邪恶。 骑士团是肯定具有打败邪恶势力的能力的,但是骑士们互相之间往往有一些矛盾。每个骑士都有且仅有一个自己最厌恶的骑士(当然不是他自己),他是绝对不会与自己最厌恶的人一同出征的。 战火绵延,人民生灵涂炭,组织起一个骑士军团加入战斗刻不容缓!国王交给了你一 阅读全文

posted @ 2012-04-04 21:17 myoi 阅读(450) 评论(0) 推荐(1)

zjoi 2008 party 生日聚会 动态规划
摘要:【问题描述】 今天是hidadz小朋友的生日,她邀请了许多朋友来参加她的生日party。 hidadz带着朋友们来到花园中,打算坐成一排玩游戏。为了游戏不至于无聊,就座的方案应满足如下条件: 对于任意连续的一段,男孩与女孩的数目之差不超过k。 很快,小朋友便找到了一种方案坐了下来开始游戏。hidadz的好朋友Susie发现,这样的就座方案其实是很多的,所以大家很快就找到了一种,那么到底有多少种呢?热爱数学的hidadz和她的朋友们开始思考这个问题…… 假设参加party的人中共有n个男孩与m个女孩,你是否能解答Susie和hidadz的疑问呢?由于这个数目可能很多,他们只想知道这个数目除以12 阅读全文

posted @ 2012-04-04 21:14 myoi 阅读(545) 评论(0) 推荐(0)

导航