QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#760875#9622. 有限小数nxktWA 8ms3568kbC++14625b2024-11-18 19:55:202024-11-18 19:55:21

Judging History

你现在查看的是最新测评结果

  • [2024-11-18 19:55:21]
  • 评测
  • 测评结果:WA
  • 用时:8ms
  • 内存:3568kb
  • [2024-11-18 19:55:20]
  • 提交

answer

#include<bits/stdc++.h>
#define int long long
using namespace std;
vector<int>p;
void solve()
{
	int a,b;
	cin>>a>>b;
	int ansc=1e9,ansd=1e9;
	for(auto x:p)
	{
		if(b<x*a)break;
		int c=b-x*a,d=x*b;
		int g=__gcd(c,d);
		c/=g,d/=g;
		if(ansc>c)
		{
			ansc=c,ansd=d;
		}
	}
	cout<<ansc<<" "<<ansd<<endl;
}
unordered_map<int,bool>st;
void dfs(int now)
{
	p.push_back(now);
	st[now]=1;
	if(now*5<=1e9&&!st[now*5])dfs(now*5);
	if(now*2<=1e9&&!st[now*2])dfs(now*2);
}
signed main()
{
	dfs(1);
	sort(p.begin(),p.end());
//	cout<<p.size();
	int tt;
	cin>>tt;
	while(tt--)solve();
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3508kb

input:

4
1 2
2 3
3 7
19 79

output:

0 1
1 3
1 14
3 316

result:

ok 4 case(s)

Test #2:

score: -100
Wrong Answer
time: 8ms
memory: 3568kb

input:

10000
11 12
28 53
17 60
2 35
17 181
80 123
68 141
79 163
71 99
13 64
33 61
15 32
16 61
11 86
33 74
128 143
40 53
7 23
30 31
5 6
86 181
73 91
13 23
71 81
1 2
7 38
117 160
33 83
129 151
88 153
25 58
16 19
19 141
95 124
43 96
71 139
11 59
106 109
93 152
34 43
17 99
1 57
20 159
16 25
5 73
159 170
172 17...

output:

1 12
25 53
13 60
1 7
11 1810
43 123
5 282
5 326
28 99
3 64
28 61
1 32
29 122
16 43
2 37
15 143
13 53
9 46
1 31
1 6
9 362
18 91
10 23
10 81
0 1
3 190
43 160
17 166
22 151
65 153
2 29
3 19
46 705
29 124
5 96
68 139
4 295
3 109
59 152
9 43
14 495
7 2850
59 795
9 25
23 730
11 170
7 179
3 65
16 85
7 172
...

result:

wrong answer Jury found better answer than participant's 1 < 25 (Testcase 2)