lina_os

Untitled

Mar 27th, 2025
18
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define ll long long
  3.  
  4. using namespace std;
  5.  
  6. ll mul(ll a, ll b, ll MOD = 1e9 + 7) {
  7. return ((a % MOD) * (b % MOD)) % MOD;
  8. }
  9.  
  10. ll add(ll a, ll b, ll MOD = 1e9 + 7) {
  11. return ((a % MOD) + (b % MOD)) % MOD;
  12. }
  13.  
  14. ll sub(ll a, ll b, ll MOD = 1e9 + 7) {
  15. return (((a - b) % MOD) + MOD) % MOD;
  16. }
  17.  
  18. int main() {
  19. ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
  20. ll MOD = 1e9+7;
  21. int t;
  22. cin >> t;
  23. while (t--) {
  24. ll a,b,c,n;
  25. cin >> a >> b >> c >> n;
  26. multiset<ll>s;
  27. ll ans=0;
  28. ans++;
  29. s.insert(1);
  30. for (int i=2; i<=n; i++) {
  31. ll x=add(add(mul(a,*next(s.begin(),(s.size()-1)/2)),mul(b,i)),c)%MOD;
  32. ans+=x;
  33. ans%=MOD;
  34. s.insert(x);
  35. }
  36. cout << ans%MOD << endl;
  37.  
  38. }
  39. return 0;
  40. }
  41.  
  42. /*
  43. * 3 1 2 6
  44. * 1 2 3 4 5 6
  45. * 1 7 8
  46. */
Advertisement
Add Comment
Please, Sign In to add comment