fork download
  1. #include <bits/stdc++.h>
  2. #define int long long
  3. typedef long long ll;
  4. using namespace std;
  5.  
  6. void solve() {
  7. int n,x;
  8. cin >> n >>x;
  9. vector<int> v(n);
  10. for(int i=0;i<n;i++){
  11. cin>>v[i];
  12. }
  13. int low=1,high=1e10;
  14. int ans=INT_MIN;
  15. while(low<=high){
  16. int h=(low+high)/2;
  17. int sum=0;
  18. for(int i=0;i<n;i++){
  19. sum+=max(0ll,h-v[i]);
  20. }
  21. if(sum>x){
  22. high=h-1;
  23. }
  24. else{
  25. ans=max(ans,h);
  26. low=h+1;
  27. }
  28. }
  29. cout<<ans<<endl;
  30.  
  31. }
  32.  
  33. signed main() {
  34. int t;
  35. cin >> t;
  36. while (t--) {
  37. solve();
  38. }
  39. return 0;
  40. }
  41.  
Success #stdin #stdout 0.01s 5276KB
stdin
5
7 9
3 1 2 4 6 2 5
3 10
1 1 1
4 1
1 4 3 4
6 1984
2 6 5 9 1 8
1 1000000000
1
stdout
4
4
2
335
1000000001