QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#788742#9622. 有限小数DarwinA66WA 1ms4120kbC++201.3kb2024-11-27 18:06:502024-11-27 18:07:01

Judging History

This is the latest submission verdict.

  • [2024-11-27 18:07:01]
  • Judged
  • Verdict: WA
  • Time: 1ms
  • Memory: 4120kb
  • [2024-11-27 18:06:50]
  • Submitted

answer

#include<bits/stdc++.h>
#define gcd __gcd
using namespace std;
vector<long long>target;
vector<pair<long,long>>assets;
int main()
{
    int T;
    scanf("%d",&T);
    for(int i=0;i<=60;i++)
    {
        for(int j=0;j<=i;j++)
        {
            long long number=(1ll*pow(2,j))*(1ll*pow(5,i-j));
            if(number>0)target.push_back(number);
        }
    }
    sort(target.begin(),target.end());
    while(T--)
    {
        int a,b;
        scanf("%d %d",&a,&b);
        int k=b;
        while(k%2==0){k=k/2;}
        while(k%5==0){k=k/5;}
        if(k==1)
        {
            printf("0 1\n");
        }
        else
        {
            for(int i=0;i<target.size();i++)
            {
                long long p=((b-a)*1ll*target[i])%b;
                long long q=(b*1ll)*target[i];
                long long o=gcd(p,q);
                p/=o;
                q/=o;
                assets.push_back({p,q});
            }
            sort(assets.begin(),assets.end());
            for(int i=1;;i++)
            {
                if(assets[i].second<=1e9)
                {
                    printf("%lld %lld\n",assets[i].first,assets[i].second);
                    break;
                }
            }
            assets.clear();
        }
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 1ms
memory: 4120kb

input:

4
1 2
2 3
3 7
19 79

output:

0 1
0 1
0 1
0 1

result:

wrong answer The result is not terminating.(Testcase 2)