fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. typedef long long int ll;
  5. typedef unsigned long long int ull;
  6. typedef long double ld;
  7. typedef pair <ll, ll> pll;
  8. typedef pair <int, int> pii;
  9.  
  10. #define pb push_back
  11. #define mp make_pair
  12. #define ff first
  13. #define ss second
  14. #define all(a) a.begin(), a.end()
  15. #define sz(a) (ll)(a.size())
  16. #define endl "\n"
  17. string s;
  18. int n,k;
  19.  
  20. int ans(int l, int r)
  21. {
  22. if (r>=l)
  23. {
  24. long long idx = l + (r - l) / 2;
  25. long long int o= idx*(idx+1)/2;
  26.  
  27. if (o-(n-idx)==k) return idx;
  28. else if (o-(n-idx)>k) return ans(l,idx-1);
  29. else return ans(idx+1,r);
  30. }
  31.  
  32. return -1;
  33. }
  34.  
  35. int main()
  36. {
  37. ios_base::sync_with_stdio(false);
  38. cin.tie(NULL); cout.tie(NULL);
  39.  
  40. cin >> n >> k;
  41.  
  42. cout<<n-ans(1,n);
  43.  
  44. return 0;
  45. }
Success #stdin #stdout 0s 15232KB
stdin
999999994 108004280
stdout
999952921