- 博客(10)
- 收藏
- 关注
转载 求小于n的与n互质的数的和
给出一个N,求1..N中与N互质的数的和 ifgcd(n,i)=1 then gcd(n,n-i)=1 (1 反证法: 如果存在K!=1使gcd(n,n-i)=k,那么(n-i)%k==0 而n%k=0 那么必须保证i%k=0 k是n的因子,如果i%k=0那么 gcd(n,i)=k,矛盾出现;
2017-05-29 22:13:46 1735
原创 hdu5776
hdu5776 #include #include #include #include #include using namespace std; int data[100005]; int main() { int t; cin>>t; while(t--) { int n,m; scanf("%d%d",&n,&m);
2017-05-08 16:55:54 367
原创 hdu5747
hdu5747 这个题可以想到二进制上,如果m+1>=二进制位数,那么就是二进制各位的和, 如果m+1 #include #include #include using namespace std; int x; int data[30]; int main() { int n,p,q; while(~scanf("%d",&n)) { while
2017-05-08 16:50:38 352
原创 poj2349 Arctic Network 最小生成树
poj2349 表示刚开始读题就读了n久没有读明白。。。明白了题意以后这题真真是个套模板的题 题意:哨站有两种通信方式:通过卫星和通过建立无线网络,通过卫星可以任意通信, 通过无线网络那么距离不能超过D,求这个最小距离D。 思路:s代表了可以扔掉s-1条边,p表示点 我采用了kruskal算法,在建立好的最小生成树中去掉s-1条边,那么返回上一个的权值w即可。 #include #in
2017-05-08 16:30:30 302
原创 hdu1176 免费馅饼(变形数塔)
hdu1176 #include #include #include #include #include using namespace std; int data[100005][11]; int temp[100005][11]; int main() { int n; while(scanf("%d",&n)!=-1) { if(n==0) brea
2017-05-04 16:42:44 221
原创 hdu2084 数塔
hdu2084 #include #include #include #include #include using namespace std; int data[105][105]; int temp[105][105]; /*int main()//从上往下 { int t; while(cin>>t) { while(t--) {
2017-05-04 16:01:12 184
原创 poj2533 最长上升子序列 dp
poj2533 dp 如果前面的数比这个数小,那么这个数等于前面的数的dp值加一#include #include #include #include using namespace std; int data[1005]; int temp[1005]; int main() { int n; while(cin>>n) { for(int i=0;
2017-05-03 20:49:30 250
原创 hdu2571命运 DP
hdu2571 WA了n次...主要是因为这个题有个 倍数关系,所以dp数组从1开始更好一些...我也没有改... #include #include #include #include #include using namespace std; int data[25][1005]; int temp[25][1005]; int main() { int n,m; int
2017-05-03 20:23:50 225
原创 hdu1060 Leftmost Digit
hdu1060 求n^n的最左边的数 设n^n=p.xxx*10^(k-1),其中p即要求的最左边的数,k是n^n的位数 两边取对数得n*lg(n)=lg(p.xxx)+(k-1) lg(p.xxx)=n*lg(n)-(k-1) p.xxx=10^(n*lg(n)-(k-1)) 所以p=(in
2017-05-01 18:31:20 363
原创 hdu 1558 Segment set 并查集 叉积判断线段是否相交
hdu1558 题意:当输入P的时候,画一条线段,并且线段是有标号顺序的,如果两个线段相交即相当于联通了, 当输入Q的时候询问这个与这条线段联通的线段有几条(包括它本身) #include #include #include #include #include using namespace std; struct point { double x; double y; };
2017-05-01 16:26:38 292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人