#include <iostream>
#include <map>
using namespace std;
int main() {
int a = 2, b = 5;
cout << "Rozwiniecie binarne 2/5: 0.";
map<int,int> seen;
string result = "";
int pos = 0;
int r = a;
while (true) {
if (r == 0) {
cout << result << endl;
break;
}
if (seen.count(r)) {
int start = seen[r];
cout << result.substr(0,start) << "(" << result.substr(start) << ")" << endl;
break;
}
seen[r] = pos++;
r *= 2;
if (r >= b) {
result += '1';
r -= b;
} else {
result += '0';
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CiAgICBpbnQgYSA9IDIsIGIgPSA1OwoKICAgIGNvdXQgPDwgIlJvendpbmllY2llIGJpbmFybmUgMi81OiAwLiI7CgogICAgbWFwPGludCxpbnQ+IHNlZW47CiAgICBzdHJpbmcgcmVzdWx0ID0gIiI7CiAgICBpbnQgcG9zID0gMDsKICAgIGludCByID0gYTsKCiAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgIGlmIChyID09IDApIHsKICAgICAgICAgICAgY291dCA8PCByZXN1bHQgPDwgZW5kbDsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChzZWVuLmNvdW50KHIpKSB7CiAgICAgICAgICAgIGludCBzdGFydCA9IHNlZW5bcl07CiAgICAgICAgICAgIGNvdXQgPDwgcmVzdWx0LnN1YnN0cigwLHN0YXJ0KSA8PCAiKCIgPDwgcmVzdWx0LnN1YnN0cihzdGFydCkgPDwgIikiIDw8IGVuZGw7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBzZWVuW3JdID0gcG9zKys7CiAgICAgICAgciAqPSAyOwogICAgICAgIGlmIChyID49IGIpIHsKICAgICAgICAgICAgcmVzdWx0ICs9ICcxJzsKICAgICAgICAgICAgciAtPSBiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJlc3VsdCArPSAnMCc7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiAwOwp9Cg==