Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //---D---
- #include "bits/stdc++.h"
- //speed coding
- #define mp make_pair
- #define cve(a) for (auto i : a) {cout << i << " "; } cout << "\n";
- #define f first
- #define s second
- #define loop(i, x, n) for (ll i = x; i < n; i++)
- #define joop(x, n) for (ll j = x; j < n; j++)
- #define err cout << "ERROR" << endl;
- #define all(x) x.begin(), x.end()
- #define pb push_back
- #define sz(x) x.size()
- // types
- #define pii pair<int, int>
- #define pll pair<ll, ll>
- #define vvi vector<vector<int>>
- #define vvll vector<vector<ll>>
- typedef long long ll;
- // types of data
- #define inf 1000000000
- #define infll 1000000000000000000
- #define mod 1000000007
- #define DEBUG 1
- using namespace std;
- void solve() {
- ll s;
- cin >> s;
- tuple<ll, ll, ll> ans;
- ans = {1e12, 1, 1};
- loop(d1, 1, 1e2){
- ll l = 1, r = 1e2;
- while(l < r) {
- ll m = (l+r) / 2;
- ll sqr = d1*d1 + m*m;
- cout << "?" << m << endl;
- if( sqr <= s){
- l = m+1;
- }else{
- r = m;
- }
- }
- ans = min(ans, {abs(d1*d1 + l*l - s), d1, l} );
- }
- cout << get<1>(ans) << " " << get<2>(ans);
- }
- int main() {
- ios::sync_with_stdio(0);
- cin.tie(0);
- #ifdef DEBUG
- freopen("text.txt", "r", stdin);
- #else
- #endif
- solve();
- return 0;
- }
Add Comment
Please, Sign In to add comment