首页 > 其他分享 >Educational Codeforces Round 81 (Rated for Div. 2) D

Educational Codeforces Round 81 (Rated for Div. 2) D

时间:2022-11-01 20:34:26浏览次数:56  
标签:Educational Rated gcd int res Codeforces k2

D. Same GCDs

对于题目所给的公式
gcd(a,m)=gcd(a+x,m)
由辗转相除我们把第二个式子变一下
gcd((a+x)%m,m)x的取值范围为[0,m) (a+x)%m也是
所以我们可以直接写成 gcd(a,m)=gcd(x,m)
我们设gcd为g k1g=a k2g=m k3*g=x
显然我们对于k3的取值就是不超过k2的与k2互质的数的个数
这里我们直接贴欧拉函数模板就可以了

int fai(int n){
    int res=n;
    for(int i=2;i<=n/i;i++){
        if(n%i==0){
            res=res/i*(i-1);
            while(n%i==0)n/=i;
        }
    }
    if(n>1)res=res/n*(n-1);
    return res;
}
void solve(){
    int a,b;cin>>a>>b;
    int g=__gcd(a,b);
    int k1=a/g,k2=b/g;
    cout<<fai(k2)<<endl;
}

标签:Educational,Rated,gcd,int,res,Codeforces,k2
From: https://www.cnblogs.com/ycllz/p/16849038.html

相关文章

  • Codeforces 1670 E. Hemose on the Tree
    题意给你个数p,n=2^p;有一棵树有n个节点,告诉你怎么连边;每个点有个权值,每条边也有个权值,权值需要自行分配,[1,2,3..n...2n-1],总共2n-1个权值;你需要选一个节点,使得他到所......
  • Codeforces Round #113 (Div. 2) E. Tetrahedron(dp/递推)
    https://codeforces.com/problemset/problem/166/E题目大意:给定一个正三角锥,最上面的顶点是D点,下面三个点分别标号为ABC给定n次,我们初始化在D点上,并且要求最后第n步也......
  • Codeforces Round #650 (Div. 3) D
    D.TaskOnTheBoard观察样例我们发现一定会有0的存在然后呢?我们发现给出的题意中只是小的字符一定会加上与比它大的字符的距离数据范围是50我们知道了最大的字符......
  • Codeforces Round #667 (Div. 3) E
    E.TwoPlatforms读完题发现好像跟y坐标没关系考虑dpdp[i][0/1/2]表示以第i个点结尾的用了0/1/2个板子的max显然我们对于0我们都是初始化为0对于dp[i][1]我们直接dp[......
  • Codeforces Round #617 (Div. 3) E1
    E1.StringColoring(easyversion)观察样例我们发现要是最长下降子序列要是>=3那我们显然不可能有解然后我们考虑构造要是最长最长下降子序列只是2的话那显然我们只......
  • Codeforces - 839C - Journey(图论 + 概率 + 搜索、*1500)
    839C-Journey(⇔源地址)目录839C-Journey(⇔源地址)tag题意思路错误思路正解AC代码错误次数:2tag⇔图论、⇔概率、⇔搜索、⇔*1500题意在七......
  • Codeforces Round #658 (Div. 1) B
    B.Unmerge看完样例发现31243后面跟着的12肯定是和3一组的因为他们不如3大所以他们一定是被直接排出来的就这样我们可以将这个序列分成好多组然后就是金典背包......
  • Codeforces Round #683 (Div. 1, by Meet IT) B
    B.CatchingCheaters对于我们做过的模板提来说这道题是子串那显然我们要改变一下我们的状态表示dp[i][j]表示以ai,bj结尾的max我们状态转移就是dp[i][j]=max{dp[i-1]......
  • Educational Codeforces Round 110 (Rated for Div. 2) D
    D.PlayoffTournament观察完题发现没改变一个只会修改自己及以上的权值所以我们直接暴力qlogn但是这个题恶心的就是他那个是倒着给的我们要reverse一遍注意这时候......
  • codeforces 1734C、1733D1、1733C、1730C、1729D
    1、1734CRemovingSmallestMultiples题意:给予你一个数组S,其中包含前n个正整数你可以在S上执行以下操作任多次(包含0次):1、选择一个正整数i,(1<=k<=n),并且使得数组S中......