-
[综合] POJ 2624 简单计算几何
第一次用运算符重载,代码清晰多了。 已知两边,求组成平行四边形的第4点。运用向量相加性质。 有trick,公共点不一定是给出的第二点和第三点,自行判断。 /*************************Creater:Sevenster**Time:2012.08.0112:05**PID:P...
70
热度 -
[综合] POJ 2007 计算几何水题
大意是说将凸多边形顶点按逆时针排序,起点是原点且没有第二象限的点。 水之.... /************************Creator:Sevenster**Time:2012.08.0113:47**PID:POJ2007************************/ #incl...
5
热度 -
[综合] 求解中缀表达式...
E-Seventombs TimeLimit:3000/1000ms(Java/Other)MemoryLimit:65535/32768K(Java/Other) TotalSubmission(s):31AcceptedSubmission(s):9 Font:TimesNewRoman|Ver...
32
热度 -
1
热度 -
[综合] HDOJ 2509 Nim博弈
这题只是一只纸老虎。但是我确实被它吓到了。 你瞧瞧题中说的,一个堆可以分裂成两个堆,这么复杂的问题实在不会做啊! 准备搜题解,看看别人都是寥寥数句结题。于是我也赌气不看题解了,自己推。 分析: 照样设置T0,S0点。根据题意可知T0为必胜点,S0为必败点。 S1点:有且仅有一堆的数量>=2,这...
89
热度 -
[综合] HDOJ 21882149 水博弈
一起做过类似的,如果是以前的我的话,肯定会从0状态开始,打个表搞起。 现在想到了另外一种方法,把箱子看成装满钱的,每人从里面拿钱,最多拿m元,拿到最后一张的获胜。 #include<iostream> usingnamespacestd;intmain() {intT;scanf("%...
48
热度 -
[综合] HDOJ 几道博弈水题
HDOJ1847SG函数入门(不用也行)基本博弈的理解。 #include<iostream> usingnamespacestd;intmain() {intn,list[1111];memset(list,0,sizeof(list));for(inti=1;i<=1000;...
98
热度 -
[综合] HDOJ 1848组合博弈 SG函数的基本应用
文章不错,大家可以看看。 搞了半天原来SG函数这么简单,类比为Nim真是碉炸啦! 不太会写,将原理拿过来直接敲了。 #include<iostream> #include<algorithm> usingnamespacestd;boolcmp(inta,intb){ret...
23
热度 -
66
热度 -
81
热度 -
69
热度 -
[综合] 哈夫曼树 优先队列STL的应用
最近每次做题都要看很多资料。看来是真的老了。 这题给定字符串,以及待编码的字符数,采用哈夫曼编码,编码总长度最短。求此值。 这题添加虚拟节点,使得最后的合并方便,也就是使得每次合并保证树中都大于T个。T为提供的编码字符数。 相当于每一个节点要么是空的要么是有T个孩子的。 设待编码字符为N,添加的虚节...
67
热度 -
[综合] HDOJ 1517 博弈的理解
题目大意: Stan与Ollie两人博弈,Stan先手。 两人对当前数(初始为1)进行乘操作,乘数为[2,9];给定N,当某人第一次使得操作数大于等于N时,为胜利者。 由博弈原理: 设x为取到的值。 则x>=N时为必败态。 任何能转化为必败态的都是必胜态,所以[ceil(N/9),N-1]为必...
85
热度 -
[综合] HDOJ 1536 SG函数的基本应用
从题意来看,是基本的SG函数应用,把刚学的set用进去优化,发现不行... TLE... 再看看SG的原理,网上大部分都是采用递归,而那些题解报告都是一把抄,嗤之以鼻.. 下面是直接TLE的代码: /********************* S-Nim Sevenster 2012.08.261...
63
热度 -
[综合] 一道吓人的水题 HDU 1140
题目意思很吓人。经过分析之后就变成了一道比大小的题目...囧~ #include<set> #include<iostream> usingnamespacestd;classPoint3D{ public:doublex,y,z;Point3D(doublea=0,dou...
68
热度 -
[综合] POJ 3253 优先队列解哈夫曼树
这是一棵普通的二叉哈夫曼树。 #include<iostream> #include<queue> usingnamespacestd;intmain() {intN;while(scanf("%d",&N)!=EOF){priority_queue<int,...
44
热度 -
[综合] POJ 1862 优先队列
题目大意百度来的。看不懂=.= 说科学家有奇怪生物,每两个会合并,合并后的重量为2*sqrt(m1*m2); 求最终合并的生物最小重量。 由于m1+m2>=2*sqrt(m1+m2); 所以每次在优先队列中取出2个元素,进行合并。保证最后的解最小。 题意没懂WA了一次。 #include&l...
77
热度 -
[综合] POJ 1724 优先队列解带限制最短路
这题的实质上是最短路径问题。 大意:从1到N的路程总花费小于等于K的最短路径。 每条路有花费和长度。 依旧采用迪杰斯特拉的贪心思路,每次贪最短的,根据这个点来更新其他的点。 这题我没有注意的是加限制的优先队列的性质: 优先队列的元素保证都是到目标点的花费小于等于K的,这样下来,以长度为第一维度排序的...
51
热度 -
[综合] POJ 2008 优先队列 好题 数形结合
这题在做的时候果断不会=.= 做了一晚上和一上午。当AC之后,感觉很爽! 给定一个集合,集合中的元素有w,h两个属性。在此集合中取出一个子集,满足下列条件: A*(H-h)+B*(W-w)<=C; 其中h,w为取出子集的所有元素中最小的h和w. 求子集中最多元素个数。 朴素的办法为: 枚举w...
91
热度 -
[综合] HDOJ 1730 又见阶梯博弈
再做有种亲切感,比SG简单多了....泪奔.... 将同行两棋子之间的空格数视为某堆的石子数。 进行一次Nim就OK了.... #include<iostream> #include<cmath> usingnamespacestd;intmain() {intN,M;wh...
70
热度