QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#867507 | #2933. Sequinary Numerals | WeaRD276# | AC ✓ | 1ms | 3712kb | C++20 | 1.7kb | 2025-01-23 17:29:35 | 2025-01-23 17:29:35 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
template<class T>
using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
#define sz(x) (int)(x).size()
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define pb push_back
#define x first
#define y second
#define FOR(i, a, b) for(int i = (a); i < (b); i++)
#define RFOR(i, a, b) for(int i = (a) - 1; i >= (b); i--)
typedef long long ll;
typedef double db;
typedef long double LD;
typedef pair<int, int> pii;
typedef pair<db, db> pdd;
typedef pair<ll, ll> pll;
int solve()
{
string s;
if (!(cin >> s))
return 1;
vector<ll> pw2, pw3;
pw2 = pw3 = {1};
FOR (i, 0, 32)
{
pw2.pb(pw2.back() * 2);
pw3.pb(pw3.back() * 3);
}
reverse(all(s));
int n = sz(s);
vector<ll> mn(n);
ll num = 0, den = pw2[n - 1];
FOR (i, 0, n)
{
mn[i] = (s[i] - '0') * pw3[i] * pw2[n - i - 1];
num += mn[i];
//den *= pw2[n - 1];
}
//den /= pw2[n - 1];
//cerr << "num = " << num << " den = " << den << '\n';
if (num % den == 0)
{
cout << num / den << '\n';
return 0;
}
ll ful = num / den;
num -= ful * den;
ll g = __gcd(num, den);
cout << ful << ' ' << num / g << '/' << den / g << '\n';
return 0;
}
int32_t main()
{
ios::sync_with_stdio(0);
cin.tie(0);
int TET = 1e9;
//cin >> TET;
for (int i = 1; i <= TET; i++)
{
if (solve())
{
break;
}
#ifdef ONPC
cerr << "_____________________________\n";
#endif
}
#ifdef ONPC
cerr << "\nfinished in " << clock() * 1.0 / CLOCKS_PER_SEC << " sec\n";
#endif
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3584kb
input:
2101
output:
10
result:
ok single line: '10'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
201
output:
5 1/2
result:
ok single line: '5 1/2'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
2010211122112221202012
output:
16541 873801/1048576
result:
ok single line: '16541 873801/1048576'
Test #4:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
22222222222222222222222222222222
output:
1725755 572407425/1073741824
result:
ok single line: '1725755 572407425/1073741824'
Test #5:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
11111111111111111111111111111111
output:
862877 1646149249/2147483648
result:
ok single line: '862877 1646149249/2147483648'
Test #6:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
10000000000000000000000000000000
output:
287626 1264544299/2147483648
result:
ok single line: '287626 1264544299/2147483648'
Test #7:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
1
output:
1
result:
ok single line: '1'
Test #8:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
2
output:
2
result:
ok single line: '2'
Test #9:
score: 0
Accepted
time: 1ms
memory: 3712kb
input:
10
output:
1 1/2
result:
ok single line: '1 1/2'
Test #10:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
11
output:
2 1/2
result:
ok single line: '2 1/2'
Test #11:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
12
output:
3 1/2
result:
ok single line: '3 1/2'
Test #12:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
20
output:
3
result:
ok single line: '3'
Test #13:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
21
output:
4
result:
ok single line: '4'
Test #14:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
22
output:
5
result:
ok single line: '5'
Test #15:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
201000101020120002210001022
output:
99539 7418955/33554432
result:
ok single line: '99539 7418955/33554432'
Test #16:
score: 0
Accepted
time: 1ms
memory: 3584kb
input:
21012020111221210112111012122211
output:
1056241 54451731/134217728
result:
ok single line: '1056241 54451731/134217728'
Test #17:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
121200
output:
25 19/32
result:
ok single line: '25 19/32'
Test #18:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
22010
output:
18 3/8
result:
ok single line: '18 3/8'
Test #19:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
1102121021020020112221202220100
output:
565301 930420511/1073741824
result:
ok single line: '565301 930420511/1073741824'
Test #20:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
1022020000221011110121211
output:
47476 16343961/16777216
result:
ok single line: '47476 16343961/16777216'
Test #21:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
21100210121101
output:
698 349/2048
result:
ok single line: '698 349/2048'
Test #22:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
122110002
output:
97 61/256
result:
ok single line: '97 61/256'
Test #23:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
200200011120110
output:
806 6545/8192
result:
ok single line: '806 6545/8192'
Test #24:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
212020012222220200010110012112
output:
540506 7899177/8388608
result:
ok single line: '540506 7899177/8388608'
Test #25:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
21201001011
output:
222 19/64
result:
ok single line: '222 19/64'