Advertisement
bibaboba12345

Untitled

Apr 22nd, 2022
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <iostream>
  3. #include <random>
  4. #include <cstdlib>
  5. #include <cassert>
  6. #include <algorithm>
  7. #include <cmath>
  8. using namespace std;
  9. #define int long long
  10. mt19937 rnd(12345);
  11.  
  12. const int N = 2e5 + 7;
  13. const unsigned int MOD = 1e9 + 7;
  14. int n, a[N], cnt, x, r;
  15. unsigned long long ans, prefixsum[N];
  16. void solve() {
  17. ans = 0;
  18.  
  19. cin >> n >> x;
  20. for (int i = 0; i < n; i++) {
  21. cin >> a[i];
  22. }
  23. sort(a, a + n);
  24. if (a[0] > x) {
  25. cout << "0\n";
  26. return;
  27. }
  28. int delta = 0, last_delta = -1;
  29. prefixsum[0] = a[0];
  30. for (int i = 1; i < n; i++) {
  31. prefixsum[i] = prefixsum[i - 1] + a[i];
  32. }
  33. int r = 0;
  34. while (prefixsum[r + 1] <= x && r < n-1) {
  35. r++;
  36. }
  37. for (r; r >= 0; r--) {
  38. int y = (x - prefixsum[r]) / (r + 1);
  39. ans += (r + 1) * (y - last_delta);
  40. last_delta = y;
  41. }
  42. cout << ans << '\n';
  43. }
  44.  
  45.  
  46. signed main()
  47. {
  48. #ifdef _DEBUG
  49. freopen("input.txt", "r", stdin);
  50. #else
  51. ios::sync_with_stdio(false);
  52. cin.tie(0);
  53. #endif
  54. int t;
  55. cin >> t;
  56. while (t--) {
  57. solve();
  58. }
  59. //cin >> n;
  60.  
  61.  
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement