QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#766705#9622. 有限小数275307894aWA 7ms4036kbC++141.5kb2024-11-20 18:18:212024-11-20 18:18:22

Judging History

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

  • [2024-11-20 18:18:22]
  • 评测
  • 测评结果:WA
  • 用时:7ms
  • 内存:4036kb
  • [2024-11-20 18:18:21]
  • 提交

answer

#include<bits/stdc++.h>
#define Gc() getchar()
#define Me(x,y) memset(x,y,sizeof(x))
#define Mc(x,y) memcpy(x,y,sizeof(x))
#define d(x,y) ((m)*(x-1)+(y))
#define R(n) (rnd()%(n)+1)
#define Pc(x) putchar(x)
#define LB lower_bound
#define UB upper_bound
#define fi first
#define se second
#define eb emplace_back
#define all(x) x.begin(),x.end()
using namespace std;using ll=long long;using db=double;using lb=long db;using ui=unsigned;using ull=unsigned long long;using pii=pair<int,int>;
const int N=200+5,M=N*4+5,K=1000+5,mod=1e9+7,Mod=mod-1;const db eps=1e-9;const int INF=1e9+7;mt19937 rnd(28382);
#define Tp template<typename T>
#define Ts template<typename T,typename... Ar>
namespace Debug{
	Tp void _debug(char* f,T t){cerr<<f<<'='<<t<<endl;}
	Ts void _debug(char* f,T x,Ar... y){while(*f!=',') cerr<<*f++;cerr<<'='<<x<<",";_debug(f+1,y...);}
	#ifdef LOCAL
	#define gdb(...) _debug((char*)#__VA_ARGS__,__VA_ARGS__)
	#else 
	#define gdb(...) void()
	#endif
}using namespace Debug;
int a,b;
void exgcd(int x,int y,int &a,int &b){
	if(!y){a=1;b=0;return;}
	exgcd(y,x%y,b,a);a-=x/y*b;
}
void Solve(){
	scanf("%d%d",&a,&b);
	int e=1;
	while(b%2==0) b/=2,e*=2;
	while(b%5==0) b/=5,e*=5;
	int p,q;exgcd(b,e,p,q);
	a=(1ll*(b-a)*q%b+b)%b;
	int ansc=INF,ansd=0;
	for(int i=1;1ll*i*b<=1e9;i*=2){
		for(int j=1;1ll*i*j*b<=1e9;j*=5){
			int c=1ll*a*i*j%b,d=i*j*b;
			if(c<ansc) ansc=c,ansd=d;
		}
	}
	printf("%d %d\n",ansc,ansd);
}
int main(){
	int t=1;
	scanf("%d",&t);
	while(t--) Solve();
	cerr<<clock()*1.0/CLOCKS_PER_SEC<<'\n';
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 4036kb

input:

4
1 2
2 3
3 7
19 79

output:

0 1
1 3
1 4375
3 316

result:

ok 4 case(s)

Test #2:

score: -100
Wrong Answer
time: 7ms
memory: 4016kb

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 3
1 828125000
1 3
1 4375
1 231680000
23 960937500
1 36096000
5 326
1 63360
0 1
1 61000
0 1
1 4880
1 86
1 722656250
1 11714560
1 331250
1 898437500
1 31
1 3
1 289600000
1 455000
1 115000000
1 1265625
0 1
1 23750
0 1
1 415
1 235937500
1 765000000
1 7250
1 2968750
1 4406250
3 1550
1 15
3 347500
1 944...

result:

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