Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- bool isEqual(ld a, ld b) {
- return abs(a - b) < 1e-8;
- }
- bool isFullSqr(ld x) {
- ld sx = round(sqrt(x));
- return isEqual(sx * sx, x);
- }
- void solve()
- {
- ll n;
- cin>>n;
- ld l = n, r = n;
- ld ans;
- while(true) {
- if (isFullSqr(l)) {
- ans = l;
- break;
- }
- ld sl = floor(sqrt((long double)l));
- ld sr = floor(sqrt((long double)r));
- if (!isEqual(sl, sr)) {
- ans = (sl+1) * (sl+1);
- break;
- }
- l = l * 10;
- r = r * 10 + 9;
- }
- cout.precision(0);
- cout<<fixed<<ans<<endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement