
数学问题
acm_lkl
这个作者很懒,什么都没留下…
展开
-
uva--10161--Ant on a Chessboard
这是一道简单的数学问题,不过要花点时间找下规律。 我的思路是:对每个基本图形都找3个点的坐标与时间的关系,然后其它的点由这3个点分类讨论出结果 代码如下: #include #include using namespace std; int main() { int N,x,y,a,b,i,Sn,n; while(cin>>N&&N) { do原创 2014-05-27 23:42:47 · 576 阅读 · 0 评论 -
csuoj--1347Last Digit+数学问题
题意: 定义一个函数f(n, k) = 1k + 2k + 3k +...+ nk,输入n,k求f(n,k)的最后一位数字。 思路: 本来相用快速幂做的,后面想了一下因为它只关心最后一位数字,所以其实该函数是一个周期为10的周期函数(我们只关心n的最后一位数字);然后对于0--9的幂又是有周期的(自己稍微在纸上写一下就知道了),所以可以利用周期性解决了:对于每一次输入,我们先计原创 2014-12-26 23:39:26 · 640 阅读 · 0 评论 -
uva--993Product of digits
水题一枚,如果n能分解成2--9的因子相乘的形式的话肯定是可以的,如果不行那么就直接输出-1; 那么当能分解的时候,为了能使得答案的值最小,我们选择先分解大的因子;也就是按9--2的次序进行分解。 分解后直接按因子从小到大输出就是答案了。 代码如下: #include #include #include using namespace std; int main() {原创 2014-11-24 23:34:17 · 832 阅读 · 0 评论 -
uva--10382Watering Grass+贪心
题意: 一片长为L宽为W的矩形草坪,然后给出n个喷头的圆心坐标和半径,问你最少需要几个喷头可以覆盖整个草坪。 思路: 刚开始的时候直接觉得可以算出每个喷头可以覆盖的区间,然后就变成前面刚做过的区间覆盖问题了;后面看了一下样例,发现这样想是不对的,因为喷头边沿的圆弧可能是不能完全覆盖住草地的,所以那些地方就必须还要别的喷头去覆盖,这样就不能直接用区间合并来做了。后面又想了一下,其实每原创 2014-11-25 17:35:40 · 786 阅读 · 0 评论 -
uva--10057+数学问题
题意: 输入n个数x1,x2.....xn,原创 2014-11-17 22:46:46 · 591 阅读 · 0 评论 -
hdu--1757
一道关于矩阵快速幂的题目原创 2014-08-12 20:36:33 · 455 阅读 · 0 评论 -
uva--10220
简单题 主要是要用数组原创 2014-08-12 23:39:10 · 469 阅读 · 0 评论 -
hdu--4462
一道关于状态压缩的题目。原创 2014-08-12 20:36:31 · 499 阅读 · 0 评论 -
第五周训练赛2--B题
一道简单的数学题;做这种数学题一是原创 2014-08-12 20:13:51 · 445 阅读 · 0 评论 -
hdu--2035
一道简单的关于求幂的题目 下面的代码给出原创 2014-08-12 20:38:40 · 493 阅读 · 0 评论 -
zoj--1088--System Overload
这道题开始一看还真没有什么思路,原创 2014-06-15 00:02:02 · 823 阅读 · 0 评论 -
hud--1021--Fibonacci Again
开始是想打表直接做的,因为原创 2014-06-11 23:51:33 · 631 阅读 · 0 评论 -
扩展欧几里得算法
证明:设 a>b。 推理1,显然当 b=0,gcd(a,b)=a。此时 x=1,y=0;//推理1 推理2,a*b!=0 时 设 ax1+by1=gcd(a,b); bx2+(a mod b)y2=gcd(b,a mod b); 根据朴素的欧几里德原理有 gcd(a,b)=gcd(b,a mod b); 则:ax1+by1=bx2+(a mod b)y2; 即:ax1+by1=bx2+原创 2015-05-14 23:02:22 · 745 阅读 · 0 评论