Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define int long long
- int n, b;
- int sum(int k){ return 4*k*(n-k) + 1; }
- int bin(int x, int l = 0, int r = n/2){
- int mid;
- while(l != r){
- mid = (l+r)/2;
- if(sum(mid) > x) r = mid;
- else l = mid+1;
- }
- return max(l-1, 0ll);
- }
- int32_t main(){
- ios_base::sync_with_stdio(0), cin.tie(0);
- cin >> n >> b;
- int ax = bin(b);
- pair<int, int> ld, rd, lu, ru;
- ld = {ax + 1, ax + 1 };
- rd = {ax + 1, n - ax };
- lu = {n - ax, ax + 1 };
- ru = {n - ax, n - ax };
- int falta = b - sum(ax), sh = n-1-2*ax;
- if(falta <= sh) cout << ld.first << " " << ld.second+falta << "\n";
- else if(falta <= 2*sh) cout << rd.first + falta-sh << " " << rd.second << "\n";
- else if(falta <= 3*sh) cout << ru.first << " " << ru.second - falta + 2*sh << "\n";
- else cout << lu.first - falta + 3*sh << " " << lu.second << "\n";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement