QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#198550#6749. TargetJJBOOMAC ✓0ms3988kbC++14984b2023-10-03 14:44:262023-10-03 14:44:28

Judging History

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

  • [2023-10-03 14:44:28]
  • 评测
  • 测评结果:AC
  • 用时:0ms
  • 内存:3988kb
  • [2023-10-03 14:44:26]
  • 提交

answer

#include <bits/stdc++.h>
		
using namespace std;
		
double a, b;
		
long long power(int a, int b) {
	long long ans = 1;
	for (; b; b >>= 1, a = 1LL * a * a) {
		if (b & 1) {
			ans *= a;
		}
	}
	
	return ans;
}
		
int main(){
	cin.tie(nullptr)->sync_with_stdio(false);
	cin >> a >> b;
	
	for (int i = 0; i <= 50; i++) {
		long long now = power(2, i);
		double c = a / now;
		double d = b - c;
//		cout << c << " " << d << " " << now << "\n";
		if (abs(d) <= 1e-4) {
			string ans = string(i, '1');
			cout << ans << "\n";
			break;
		}
		if (d < 0) {
			continue;
		}
		long long cur = d * now;
		d = 1.0 * cur / now;
		c += d;
//		cerr << c << " " << d << " " << cur << " " << b << "\n";
		if (abs(b - c) <= 1e-4) {
			string ans = string(i, '1');
			for (int j = 0; j < i; j++) {
				if (cur & 1) {
					ans[j]++;
				}
				cur /= 2;
			}
//			reverse(ans.begin(), ans.end());
			cout << ans << "\n";
			break;
		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

0.5 0.25

output:

1

result:

ok ok

Test #2:

score: 0
Accepted
time: 0ms
memory: 3944kb

input:

1 0.75

output:

12

result:

ok ok

Test #3:

score: 0
Accepted
time: 0ms
memory: 3844kb

input:

1 0

output:

11111111111111

result:

ok ok

Test #4:

score: 0
Accepted
time: 0ms
memory: 3976kb

input:

0.361954 0.578805

output:

21111212112

result:

ok ok

Test #5:

score: 0
Accepted
time: 0ms
memory: 3908kb

input:

0.144888 0.140086

output:

2212222111211

result:

ok ok

Test #6:

score: 0
Accepted
time: 0ms
memory: 3812kb

input:

0.514397 0.969399

output:

121111122222

result:

ok ok

Test #7:

score: 0
Accepted
time: 0ms
memory: 3784kb

input:

0.887873 0.402213

output:

212211221

result:

ok ok

Test #8:

score: 0
Accepted
time: 0ms
memory: 3816kb

input:

0.152004 0.176414

output:

21221211

result:

ok ok

Test #9:

score: 0
Accepted
time: 0ms
memory: 3784kb

input:

0.401831 0.860762

output:

2111222122

result:

ok ok

Test #10:

score: 0
Accepted
time: 0ms
memory: 3912kb

input:

0.580629 0.869474

output:

12222122

result:

ok ok

Test #11:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.138673 0.508844

output:

112112111112

result:

ok ok

Test #12:

score: 0
Accepted
time: 0ms
memory: 3808kb

input:

0.027182 0.263243

output:

22122111121

result:

ok ok

Test #13:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

0.081714 0.212216

output:

212112212211

result:

ok ok

Test #14:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

0.562775 0.388603

output:

222122111221

result:

ok ok

Test #15:

score: 0
Accepted
time: 0ms
memory: 3740kb

input:

0.112949 0.147503

output:

112221211211

result:

ok ok

Test #16:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.800247 0.150903

output:

211212211211

result:

ok ok

Test #17:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.300103 0.584619

output:

221212112

result:

ok ok

Test #18:

score: 0
Accepted
time: 0ms
memory: 3808kb

input:

0.844720 0.070148

output:

2122221112111

result:

ok ok

Test #19:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.573320 0.123035

output:

222122222111

result:

ok ok

Test #20:

score: 0
Accepted
time: 0ms
memory: 3940kb

input:

0.467281 0.231366

output:

221122122211

result:

ok ok

Test #21:

score: 0
Accepted
time: 0ms
memory: 3808kb

input:

0.264769 0.373434

output:

211222222121

result:

ok ok

Test #22:

score: 0
Accepted
time: 0ms
memory: 3752kb

input:

0.689729 0.570712

output:

11112112112

result:

ok ok

Test #23:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

0.747218 0.312573

output:

11111111112121

result:

ok ok

Test #24:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.215052 0.203677

output:

121111212211

result:

ok ok

Test #25:

score: 0
Accepted
time: 0ms
memory: 3740kb

input:

0.607834 0.733102

output:

1222122212

result:

ok ok

Test #26:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

0.516860 0.252876

output:

221211111121

result:

ok ok

Test #27:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

0.955285 0.457773

output:

121121212221

result:

ok ok

Test #28:

score: 0
Accepted
time: 0ms
memory: 3804kb

input:

0.156178 0.353262

output:

2122112122121

result:

ok ok

Test #29:

score: 0
Accepted
time: 0ms
memory: 3772kb

input:

0.398701 0.040258

output:

12112121111

result:

ok ok

Test #30:

score: 0
Accepted
time: 0ms
memory: 3740kb

input:

0.973859 0.000184

output:

111111111111

result:

ok ok

Test #31:

score: 0
Accepted
time: 0ms
memory: 3988kb

input:

0.882213 0.556709

output:

222112221112

result:

ok ok

Test #32:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

0.263822 0.460984

output:

1111112212221

result:

ok ok

Test #33:

score: 0
Accepted
time: 0ms
memory: 3808kb

input:

0.443432 0.034841

output:

122211121111

result:

ok ok