QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#645525#9248. An Easy Math ProblemqkyWA 0ms3560kbC++171.2kb2024-10-16 18:51:322024-10-16 18:51:34

Judging History

This is the latest submission verdict.

  • [2024-10-31 22:36:43]
  • hack成功,自动添加数据
  • (/hack/1098)
  • [2024-10-31 22:13:58]
  • hack成功,自动添加数据
  • (/hack/1096)
  • [2024-10-31 22:00:43]
  • hack成功,自动添加数据
  • (/hack/1095)
  • [2024-10-16 18:51:34]
  • Judged
  • Verdict: WA
  • Time: 0ms
  • Memory: 3560kb
  • [2024-10-16 18:51:32]
  • Submitted

answer

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e4+1;
ll fac[N];
ll gcd(ll a,ll b){
    return b==0?a:gcd(b,a%b);
}
map<pair<ll,ll>,int> mp;
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    int t=1;
    cin>>t;
    while(t--){
        ll n;cin>>n;
        mp.clear();
        int cnt=0;
        for(ll i=1;i*i<=n;i++){
            if(n%i==0){
                if(i*i==n) fac[++cnt]=i;
                else {
                    fac[++cnt]=i;
                    fac[++cnt]=n/i;
                }
            }
        }
        ll ans=0;
        sort(fac+1,fac+cnt+1);
        for(int i=1;i<=cnt;i++){
            ll x=fac[i];
            for(ll j=1;j*j<=x;j++){
                if(x%j==0){
                        ll a=j,b=x/j;
                        a=a/gcd(a,b);
                        b=b/gcd(a,b);
                        if(mp[make_pair(a,b)]==0){
                            ans++;
                            mp[make_pair(a,b)]=1;
                        }
                }
            }
        }
        cout<<"ans="<<ans<<endl;
        //for(auto it:mp){
        //    cout<<it.first.first<<" "<<it.first.second<<endl;
        //}
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 3560kb

input:

10
1
2
3
4
5
6
7
8
9
10

output:

ans=1
ans=2
ans=2
ans=3
ans=2
ans=5
ans=2
ans=4
ans=3
ans=5

result:

wrong answer 1st lines differ - expected: '1', found: 'ans=1'