题目大意:给一张m*n的网格,问这里面以网格为顶点的三角形有多少个。
思路:数学题。首先算出所有互不相同的三点对,然后减掉其中三个点在一个直线上的点对就行了。注意答案开long long。
CODE:
#include
#include
#include
#include
using namespace std;
int m,n;
int Gcd(int ...
分类:
其他好文 时间:
2014-10-04 19:06:07
阅读次数:
191
/*
题目大意:求解和输入数的互质的数
解题思路:求解和 n 互质的最大数,从n/2开始找
关键点:GCD函数的使用
解题人:lingnichong
解题时间:2014-10-04 16:11:55
解题体会:还是不知道为什么这样就对了
*/
聪明的小珂
时间限制:1000 ms | 内存限制:1000 KB
难度:3
描述
小珂是一个爱...
分类:
其他好文 时间:
2014-10-04 19:04:26
阅读次数:
152
题目大意:
给定一个m*n的方格,求上面有多少个格点三角形
m,n
枚举O(m^3*n^3),铁定超时
我们选择补集法
首先我们任意选择三个不重复的点构成三角形 用组合数算出这一值 然后刨除三点一线的点即可
枚举三点之中在两边的点的横纵坐标之差,中间点的位置数为GCD(x,y)-1,统计答案即可
注意初始计算组合数时可能会爆int
#include
#include
#includ...
分类:
其他好文 时间:
2014-10-04 17:14:46
阅读次数:
184
POJ 1061 青蛙的约会(扩展欧几里德)...
分类:
其他好文 时间:
2014-10-04 12:32:56
阅读次数:
151
ZOJ 3609 Modular Inverse(扩展欧几里德)...
分类:
其他好文 时间:
2014-10-04 12:29:36
阅读次数:
197
HDU 2669 Romantic(扩展欧几里德)...
分类:
其他好文 时间:
2014-10-03 22:48:35
阅读次数:
228
hdu4630:http://acm.hdu.edu.cn/showproblem.php?pid=4630题意:给定一个排序,求区间最大GCD。题解:离散树状数组。首先把查询按左端点从大到小排序。然后用树状数组来维护每个位置出现的最大的公约数。枚举每个数的约数,记录到当前位置为止,上一个x的倍数出...
分类:
其他好文 时间:
2014-10-03 13:38:34
阅读次数:
196
求不比M大的可以被集合任一个数整除的数的个数。(容斥原理)#include #include #include #include using namespace std;int set[15];int ans;int gcd(int a,int b){ if(b==0) return a; retu...
分类:
其他好文 时间:
2014-10-02 17:26:53
阅读次数:
158
不经意看见dis后的“mod”一词后,瞬间有了思路,点进去看,却发现别人想的和我的不一样——!我是这样想的,利用的是剩余系+欧几里德带余除法的性质。若两者GCD=1,则必有除数和余数GCD=1.于是,求出除数剩余系,再在原位置加上被除数的倍数得到第k个数.#include #include #inc...
分类:
其他好文 时间:
2014-10-02 12:16:32
阅读次数:
155
字符串旋转问题:"abcdefgh" 向左旋转3个字符,"defghabc"int gcd(int a,int b){//求最大公约数 if(a==0||b==0) return -1; int t=a; if(a=n) k-=n; ...
分类:
其他好文 时间:
2014-10-01 18:30:41
阅读次数:
112