摘要: 题目描述:求小于n且与n不互质的数的和。分析: 方法一:容斥原理。对n分解因式,利用容斥原理来n的因子的和即为答案。 方法二:考虑欧拉函数,n之前与n互质的数的和sum=n*euler(n)/2 如果gcd(n,i)=1,那么必有gcd(n,n-i)=1,所以与n互质的数应该是成对出现的,每一对的和就是n,所以总和就是n*euler(n)/2;容斥原理解法 1 #include<iostream> 2 #include<cstring> 3 #include<vector> 4 #define N 1000010 5 using namespace std; 阅读全文
posted @ 2012-10-28 21:22 silver__bullet 阅读(253) 评论(0) 推荐(0) 编辑