上一页 1 ··· 77 78 79 80 81 82 83 84 85 ··· 182 下一页
摘要: 排序题View Code #include <iostream>#include <cstdlib>#include <cstring>#include <cstdio>#include <algorithm>using namespace std;#define maxn 1005#define inf 0x3f3f3f3fstruct A{ int a, b; int v;} add[maxn * maxn];struct B{ int c, d; int v;} mns[maxn * maxn];int f[maxn];int 阅读全文
posted @ 2011-09-08 13:44 undefined2024 阅读(182) 评论(0) 推荐(1)
摘要: 二分图匹配View Code #include <iostream>#include <cstdlib>#include <cstring>#include <cstdio>#include <cmath>using namespace std;#define MAXN 105struct Point{ double x, y;} gopher[MAXN], hole[MAXN];int uN, vN, v, s;bool g[MAXN][MAXN];int xM[MAXN], yM[MAXN];bool chk[MAXN];bool 阅读全文
posted @ 2011-09-08 10:37 undefined2024 阅读(138) 评论(0) 推荐(0)
摘要: 解析几何在解析几何中,二分法是常用的。题意:给出x,y,c求?长度。分析:设两直角边为xx,yy。两对顶三角形相似 => yy/c=xx/(xx-c) => c = xx*yy/(xx+yy)然后二分查找所求长度即可。可以通过所求长度和x,y,计算出c,若c比真实的大则证明当前的查找值偏小。View Code #include <iostream>#include <cstdlib>#include <cstring>#include <cmath>#include <cstdio>usingnamespace std;# 阅读全文
posted @ 2011-09-08 10:14 undefined2024 阅读(205) 评论(0) 推荐(0)
摘要: 博弈题意:两个人轮流用2~9来乘n,使n不断扩大,n开始为1。当给一个固定值k,谁先使n超过k谁赢。分析:能到达必败态的状态为必胜态,只能到达必胜态的状态为必败态。对于给定的k,n>=k时为必败态,所有能到达这些必败态的n为必胜态,这些必胜态中最小的是ceil(k/9.0)。凡是大于它的都可以直接到达必败态。然而有些状态只能到达必胜态,就是那些乘二都要进入必胜态的数字,这些数中最小的是ceil(ceil(k/9.0)/2.0)。这样我们又得到了一批必败态,我们只要按照这种方法不断地由必败推必胜,由必胜推必败,即可知道1是必败还是必胜。也就知道了stan是赢还是输了。View Code # 阅读全文
posted @ 2011-09-07 09:49 undefined2024 阅读(519) 评论(0) 推荐(0)
摘要: 博弈,找规律题意:摆一圈硬币,两人轮流取,每次取一个或者位置相邻的两个(最开始就要相邻,因为中间硬币被取走而相邻的不算)。谁无币可取谁输。问谁赢。分析:对于许多硬币的情况,先手必然把这堆硬币由一个环拆开一个缺口变为了一条线,后手的任务是将一条线拆成一样长得两条线(必定能实现),然后跟着先手在两条线之间做对称的动作即可。View Code #include <iostream>#include <cstdlib>#include <cstring>#include <cstdio>usingnamespace std;int main(){ //f 阅读全文
posted @ 2011-09-06 20:31 undefined2024 阅读(289) 评论(0) 推荐(0)
上一页 1 ··· 77 78 79 80 81 82 83 84 85 ··· 182 下一页