2 条题解

  • 0
    @ 2025-3-30 14:16:14

    include <bits/stdc++.h>

    using namespace std; const int N=1e8; int gcd(int a,int b){ if(b==0)return a; return gcd(b,a%b); } int main(){ int n,m,ans=0; cin>>n>>m; for(int i = 1;i<=m;i++){ for(int j= 1;j<=m;j++){ if(gcd(i,j)==n and i*j/gcd(i,j)==m){ ans++; } } } cout<<ans<<endl; return 0; }

    • 0
      @ 2024-12-17 13:26:36
      #include<iostream>
      #include<cmath>
      using namespace std;
      typedef long long ll;
      int m,n,ans,flag;
      ll gcd(ll x,ll y)
      {
          if(y==0)    {return x;}
          return gcd(y,x%y);
      }
      int main()
      {
          cin>>n>>m;
          for(int i=1;i<=sqrt(1ll*m*n);i++)
          {
              if((1ll*n*m)%i==0&&gcd(i,(1ll*n*m)/i)==n)
              {
                  ans++;
                  if(1ll*i*i==1ll*n*m)  flag=1;
              }
          }
          cout<<ans*2-flag;
          return 0;
      }
      
      • 1

      信息

      ID
      650
      时间
      1000ms
      内存
      256MiB
      难度
      4
      标签
      递交数
      50
      已通过
      24
      上传者