题目分析: 这种题目标题写莫比乌斯反演会不会显得太恐怖了,那就容斥算了. gcd不为1的肯定可以开根.所以把根式结果算出来就行了. 辣鸡题目卡我精度. 代码: #include<bits/stdc++.h> using namespace std; ; long long n; ]; void init(){ ;i<=;i++){ int p = i; mu[i] = -; ;j*j<=p;j++){ ; ) p/=j,cnt++; && cnt != ) mu[i…
Relatively Prime Powers CodeForces - 1036F Consider some positive integer xx. Its prime factorization will be of form x=2k1⋅3k2⋅5k3⋅-x=2k1⋅3k2⋅5k3⋅- Let's call xx elegant if the greatest common divisor of the sequence k1,k2,-k1,k2,- is equal to 11. F…
题目:经过提炼后, 题目的意思就是问[2,n] 内,不是次方数的数量 ,: 思路: 答案就是 原理是利用容斥,注意n开i次根是向下取整(这题巨卡精度) 这是大神的思路 ,, 我还没有理解, 先放着,等以后在来思考 , 先当模板使用 #include <bits/stdc++.h> #define forn(i, n) for (int i = 0; i < int(n); i++) using namespace std; ; * + ; const long long INF64 =…
题目链接:http://codeforces.com/contest/1036/problem/F 题意: 题解:求在[2,n]中,x != a ^ b(b >= 2 即为gcd)的个数,那么实际上就是要求x = a ^ b的个数,然后用总数减掉就好了,答案即为.(pow会丢失精度,学习避免精度丢失的方法) #include <bits/stdc++.h> using namespace std; #define ll long long #define LL __int128 #def…
实际上就是求在[2,n]中,x != a^b的个数,那么实际上就是要求x=a^b的个数,然后用总数减掉就好了. 直接开方求和显然会有重复的数.容斥搞一下,但实际上是要用到莫比乌斯函数的,另外要注意减掉1^b这种情况. #include <cmath> #include <cstdio> #include <cstdlib> #include <cassert> #include <cstring> #include <set> #in…
开始系统的学习容斥原理!通常我们求1-n中与n互质的数的个数都是用欧拉函数! 但如果n比较大或者是求1-m中与n互质的数的个数等等问题,要想时间效率高的话还是用容斥原理!   本题是求[a,b]中与n互质的数的个数,可以转换成求[1,b]中与n互质的数个数减去[1,a-1]与n互质的数的个数. #include<iostream> #include<cstdio> #include<cstring> using namespace std; #define LL lon…
1036A - Function Height    20180907 \(ans=\left \lceil \frac{k}{n} \right \rceil\) #include<bits/stdc++.h> using namespace std; #define LL long long LL n,k; int main() { scanf("%I64d%I64d",&n,&k); printf()/n+); ; } 1036B - Diagonal…
暴力搞肯定不行,因此我们从小到大枚举素数,用n去试除,每次除尽,如果已经超过20,肯定是no.如果当前枚举到的素数的(20-已经找到的质因子个数)次方>剩下的n,肯定也是no.再加一个关键的优化,如果剩下的次数是1了,就直接判定剩下的n是否是素数.这样可以保证次方>=2,将我们需要枚举的素数限制在200w以内,就可做了.线性筛在这题虽然不必要,但是可以当个板子存下来. The hacker Michael develops breakthrough password manager, whic…
The hacker Michael develops breakthrough password manager, which is called KEK (Keeper of Encrypted Keys). A distinctive feature of KEK is excellent security. To achieve this, Michael had to develop innovative encryption scheme. For example, in the w…
题意: 求小于n (1 ≤ n ≤ 10^8)的数中,与n互质的数的四次方和. 知识点: 差分: 一阶差分: 设  则    为一阶差分. 二阶差分: n阶差分:     且可推出    性质: 1. 2. 差分序列: 给你一列数 a[i][1],a[i][2],a[i][3],a[i][4],a[i][5]…… 那么a[i][j]=a[i-1][j+1]-a[i-1][j], 即后一行是上一行相邻两项的差(第一行除外). 如果给你一个多项式, 比如 f(x)=(x+1)*(x+2)*……*(x…