- 博客(8)
- 收藏
- 关注
原创 LA-4060(枚举)
题意: 给64位正整数n,找出所有的0 思路: 暴力枚举n的所有因子,然后看最小公倍数是否是n; AC代码: //#include #include #include #include #include #include #include #include #include using namespace std; #define Riep(n) for(int i=
2016-07-07 18:52:12
379
原创 UVA-10943(dp)
题意: 把k个不超过n的数加起来,使得他们的和为n,有多少种方法; 思路: 简单dp,dp[i][j]表示把i分成j个数的方案数,dp[i][j]=dp[0][j-1]+dp[1][j-1]+dp[2][j-1]+...+dp[i][j-1];(相当于第j个数为[0,i];) AC代码: //#include #include #include #include #include
2016-07-07 15:21:35
251
原创 LA-2889(dp)
题意: 给定一个数n,问第n个回文数是多少; 思路: 回文数可以奇数长度可以偶数长度;比如长度为1和长度为2的个数是一样的;然后就减减就好了; AC代码: //#include #include #include #include #include #include #include #include #include using namespace std;
2016-07-07 14:19:35
302
原创 UVA-11529(极角排序)
题意: n个不共线的点,任意三个都可以形成一个三角形,平均每个三角形内部包含多少个点; 思路: 反方向考虑,每个点被多少个三角形包含, 枚举每个点,以这个点为原点,再枚举剩下的点,在PI范围内再选两个点组成的三角行,那原点一定不在这些三角形中,统计不在哪些三角形走的数目那在哪些三角形中的数目也就知道了; 最后再除一下就是答案了; AC代码: //#include #include
2016-07-05 23:21:20
334
原创 LA-4064(极角排序)
题意: 给定平面上n(3 思路: 任意三点可组成一个三角形,C(n,3);减去钝角三角形的个数就是锐角或直角三角形的个数了; 计算钝角三角行的个数时枚举每个点,以这个点为原点,极角排序后计算角度在(PI/2,PI)的个数,最后一减就是答案了; AC代码: //#include #include #include #include #include #include #inc
2016-07-05 22:57:06
451
原创 LA-4382(威尔逊定理)
题意: 输入正整数n(1 思路: 当3k+7是合数的时候,那么3k+7肯定可以表示乘两个数的积,这两个数都比3k+7小,那么(3k+7)|(3*k+6)!这点除非3k+7==4时不成立,不过3k+7>4,所以floor[(3k+6)!/(3k+7)]==(3k+6)!/(3k+7),所以f(k)=0; 当3k+7是素数的时候(3k+6)!%(3k+7)==(3k+6)==-1;这是威尔逊定
2016-07-03 11:41:29
401
原创 LA-3521 (数论)
题意: 输入正整数n和k,(1 思路: 按k/i分层,一层一层的计算和,每一层可以求出左右界,这一层中的每个数组成的是等差数列,差为k/i;然后等差数列求和,最后再加一块就是答案了; AC代码: //#include #include #include #include #include #include #include #include #include usin
2016-07-03 11:28:18
414
原创 UVA-11538
//#include #include #include #include #include #include #include #include #include using namespace std; #define Riep(n) for(int i=1;i<=n;i++) #define Riop(n) for(int i=0;i<n;i++) #define Rje
2016-06-27 23:44:47
245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人