摘要: 转自网络:跳蚤题目大意是给定两个整数n和m,求出长度为n+1满足条件的数列data的个数,数列的要求下:1)1<=data[i]<=m,for1<=i<=n2)data[n+1]=m;3)这个n+1个数满足:存在x1,x2,...,xn,xn+1,满足x1*data[1]+x2*data[2]+...+x(n+1)*data[n+1]=1;根据数论的知识,若存在这样的x1,x2...xn+1,则data[1],data[2]...data[n+1]的最大公约数为1证明:若data[1],data[2]...data[n+1]满足题意,并且存在最大公约数d(为整数);则x 阅读全文
posted @ 2012-02-25 19:40 我们一直在努力 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://poj.org/problem?id=1118一道简单的题却超时了半天,到现在我也不知道超时在了那里,都是n^3的复杂度,把判斜率相等化成了交叉相乘相减就过了。超时代码:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<algorithm> 5 #include<string> 6 using namespace std; 7 struct ss{ 8 int x,y; 9 }a[800];10 int 阅读全文
posted @ 2012-02-25 17:15 我们一直在努力 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://poj.org/problem?id=1835这是一道模拟题,不过不是太好做,主要原因就是方向不好控制,三维空间,六个方向。 本题的关键就是要控制好头和脸的方向,利用打表的方法做(表中把所有的可能结果都列出来)。具体是:其中左转和右转要特别注意脸的方向(打表给出),头的方向是不变的。up其实就是脸的方向变成了头的方向,头的方向变成了脸原来的方向向后。down是头的方向变成了脸的方向,脸的方向变成了头原来方向的反方向。向后直接头不变,脸反向。View Code 1 #include<cstdio> 2 #include<iostream> 3 us 阅读全文
posted @ 2012-02-25 16:19 我们一直在努力 阅读(593) 评论(0) 推荐(0) 编辑