- 博客(50)
- 资源 (1)
- 收藏
- 关注
原创 2011Fuzhou Online HDU4070
按b从大到小排序。#include#include#include#include#includeusing namespace std;#define nMax 100010struct T{ int a,b; void read() { scanf("%d%d",&a,&b); }};T s[nMax];int cmp(T u,T v) { retu
2013-08-25 14:41:44 670
原创 2011 Fuzhou Online HDU 4068
暴力搜索。#include#include#include#include#includeusing namespace std;#define nMax 30string s[nMax];int v[nMax][nMax];int vis[nMax];#define CLR(a) memset((a),0,sizeof((a)))int ok,n;int
2013-08-25 14:40:30 608
原创 HDU 1540
Tunnel WarfareTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3240 Accepted Submission(s): 1252Problem DescriptionDuring the
2013-08-25 00:51:00 1065
原创 HDU 1394
Minimum Inversion NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7907 Accepted Submission(s): 4851Problem DescriptionT
2013-08-25 00:20:04 576
原创 Uva 11802
题意就是给定n,k问n在b进制下最后k未都是0假设 b = p1^a1 .....那么 a1*k 我们记录每个质数的个数,然后就用f(k+1)-f(k)#include#include#includeusing namespace std;#define nMax 9000int p[nMax];long long k;long long
2013-08-23 21:47:50 824
原创 Uva 10617 Again Palindromes
CLICK ME问一个字符串的子序列是回文串的个数;dp#include#include#includeusing namespace std;char s[70];long long dp[70][70];int main() { int cas; //freopen("input.txt","r",stdin); scanf("%d",&cas
2013-08-23 21:12:09 615
原创 SGU 497. Abelian Groups
SGU 497497. Abelian GroupsTime limit per test: 0.5 second(s)Memory limit: 262144 kilobytesinput: standardoutput: standardAndrew has just made a breakthrough in group theory: he reali
2013-08-23 20:12:08 770
原创 Ural 1019. Line Painting
Ural 1019. Line Painting直接离散化然后暴力染色。注意离散化的时候在线段头尾都多插一点,否则很容易错。#include#include#include#include#includeusing namespace std;#define nMax 20000int n;char s[20];struct Ask{ int a,b,
2013-08-23 16:00:48 848 1
原创 UvaLive 3964 - A Foldy but a Goody
每次折叠都是坐标的90度旋转。。。从后往前处理。#include#include#include#include#includeusing namespace std;#define nMax 40char s[nMax];int m;class P {public: int x,y; P() {}; P(int x,int y):x(x),y(y
2013-08-23 14:48:11 772
原创 Uva 10217
题目大意就是每次转一个n面的色子,问哪个位置会转出已经出现的点数的概率最大。第i个位置转出已经出现的点数的概率是:Pi = (N-1)! / i! / N^(N-i) ;P(i+1) / P(i) = (N-i+1)*i/(i-1)/N ==> i= ......最后的答案就是 (-1+sqrt(1+4N))/2 #include#includei
2013-08-23 13:39:12 798
原创 Ural 1397. Points Game
Ural 1397. Points Game假设玩家A取的石子集合是A,B的是Bval = Sum( distant(pi,pj) ) { i = Sum( distant(pi,pj) ) {i,j belong to Q} - Sum( distant(pi,pj) ) { i belong to B && j belong to Q}我们记录每个石子
2013-08-23 13:13:57 861
原创 Ural 1540. Battle for the Ring
Ural 1540. Battle for the Ring题大意就是给你一堆石子,每个石子都有权重,每次取一堆中的一个石子,将这堆石子中所有权重比该石子小的全部拿掉,分成若干堆新石子。不能操作的输。用状态sg[cur][l][r]表示第cur堆石子l 到 r的sg值。记忆化搜索之。。。#include#include#include#include#i
2013-08-23 12:39:19 786
原创 POJ 2540 Hotter Colder
POJ 2540 Hotter Colder用半平面切割巨型,维护剩下的多边形。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define
2013-08-22 22:38:00 708
原创 POJ 3384 Feng Shui
POJ 3384 Feng Shui将半平面压进r长度,然后求交。选上面距离最远的两个点。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)
2013-08-22 21:10:43 562
原创 POJ 3525 Most Distant Point from the Sea
POJ 3525 Most Distant Point from the Sea二分枚举最大长度。然后将半平面平移。判断这些半平面是否有交。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int
2013-08-22 19:50:40 708
原创 POJ 1279 Art Gallery
POJ 1279 Art Gallery半平面交的直接应用。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b
2013-08-22 19:12:46 568
原创 POJ 3130 How I Mathematician Wonder What You Are!
#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(int (i)=(a);(i)>=(b);(i)--)#de
2013-08-22 11:38:58 555
原创 POJ 1474 Video Surveillance
POJ 1474 Video Surveillance半平面交模板。。。就是拿来测试的。。。。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++
2013-08-22 11:30:51 734
原创 POJ 3335 Rotating Scoreboard
POJ 3335 Rotating Scoreboard终于AC了。就想用排序增量法的半平面交解之。。一直跪在如果最后只有一个点符合要求的数据。satisfy 的时候如果认为在直线上的点不属于半平面的话就会很蛋疼。。。#include#include#include#include#include#include#include#include
2013-08-22 10:59:36 569
原创 POJ 2451 Uyuw's Concert
POJ 2451 Uyuw's Concert半平面交第一题纪念。。。。。#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,
2013-08-21 15:49:57 543
原创 POJ 2954 Triangle
POJ 2954 Triangle给你一个非退化的三角形,问其内部的整点个数。PICK定理的直接应用版。。简单多边形:S : 面积ON: 边上的整点数IN: 内部整点数S = ON/2 + IN - 1;#include#include#include#include#include#includeusing namespace
2013-08-21 10:44:43 585
原创 POJ 1265 Area
POJ 1265 Area用到了传说中的pick定理:给定顶点座标均是整点(或正方形格点)的简单多边形,皮克定理说明了其面积A和内部格点数目i、边上格点数目b的关系:A = i + b/2 - 1。 (维基百科)面积其实就是叉积和,边上点的个数是gcd(dx,dy);然后一切就可以搞定了。不得不吐槽下POJ的G++。。。。。表示很桑心。。。#in
2013-08-21 10:32:25 544
原创 POJ 1654 Area
POJ 1654 Area很水的题。。然后注意用上longlong,否则可能答案会不对。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(
2013-08-21 09:44:35 544
原创 POJ 3348 Cows
POJ 3348 Cows求出凸包的面积除以50就是ans。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(int (i)=(a);(i)>
2013-08-21 00:28:51 523
原创 POJ 1228 Grandpa's Estate
POJ 1228 Grandpa's Estate给定一个凸包,问是否唯一确定一个凸包。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(in
2013-08-21 00:13:22 908
原创 POJ 1873 The Fortified Forest
POJ 1873 The Fortified Forest二进制枚举判断就行了。。。一开始一直TLE不知道为什么,后来就莫名其妙地过了。。。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)+
2013-08-20 23:28:41 548
原创 POJ 2007 Scrambled Polygon
POJ 2007 Scrambled Polygon其实就是普通的凸包。模板在手,一生无忧。。。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a
2013-08-19 22:28:02 543
原创 POJ1113 Wall
POJ 1113 Wall其实就是凸包长度加上半径长度为R的园的周长。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(int (i)=(a)
2013-08-19 21:20:40 527
原创 POJ 2074 Line of Sight
POJ 2074 Line of Sight线段相交其实就是枚举障碍物的坐端点和房子的右端点 还有就是障碍的右端点和房子的左端点构成的直线和风景的交点对;然后就是求这中间没有被覆盖的最长的长度。#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b
2013-08-19 20:18:16 551
原创 POJ 3533 Light Switching Game
POJ 3533 Light Switching Game三维的翻硬币游戏,就是传说的Nim积。知道这个并且有模板,万事不愁。。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int
2013-08-19 17:07:29 1002
原创 POJ 2931 Procrastination
POJ 2931 Procrastination貌似是经典的不平等博弈。。参考大牛论文《浅谈如何解决不平等博弈问题》 —— 方展鹏然后知道了有个叫做 surreal number 的玩意,然后按照论文的思路AC了。莫名不知道其妙。。贴上参考代码求大神解释为何这样就可以。。#include#include#include#include#include
2013-08-19 16:36:22 927
原创 POJ 1704 Georgia and Bob
POJ 1704 Georgia and BobNim 游戏的变形 阶梯博弈 的再变形:两两配对之后,其实就相当于取石子游戏。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b)
2013-08-19 15:04:36 638
原创 POJ 3710 Christmas Game
POJ 3710 Christmas Game图的删边游戏:由于这个图比较特殊,我们推出如果环是奇环,则相当于加一条边,偶数环就相当于删除环,变成一个点。不会缩环的默默YY了一个多小时才勉强搞定。#include#include#include#include#include#include#include#include#includeusing na
2013-08-19 15:02:34 616
原创 POJ 2599 A funny game
POJ 2599 A funny game树上的dp博弈,很easy的。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#
2013-08-19 12:15:10 618
原创 POJ 3537 Crosses and Crosses
POJ 3537 Crosses and Crosses我们取一个位置之后,对手在这个点的左边和右边的两点之内都不能选。相当于一次取了五个位置。所以 sg[i] = mex{ sg[j-3]^sg[i-j-2] | 1#include#include#include#include#include#include#include#include#include
2013-08-19 11:36:35 749
原创 POJ2068 Nim
POJ2068 Nim简单的博弈dp,记忆话搜索可能好些一点。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DO
2013-08-17 11:43:27 658
原创 POJ1678 I Love this Game!
POJ1678 I Love this Game!博弈DP,蛮有意思的一道题目。。。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);
2013-08-16 23:30:28 640
原创 博弈论大作战之 PART2
HDU1536 S-Nim 先暴力预处理所有的值得sg值,然后就是一样的。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#
2013-08-16 20:07:13 734
原创 博弈论大作战之 PART1
HDU 1047:dp一下#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(int (i)
2013-08-14 20:35:53 785
原创 2013多校7
1001 貌似大家都会做吧。。#include#include#include#include#include#include#include#include#includeusing namespace std;#define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++)#define DOR(i,a,b) for(int (i)
2013-08-14 08:34:05 673
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人