sacgajcvs

code 1.1

Sep 5th, 2019
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. /*
  2. _____ _ _ _ _
  3. |_ _| |__ ___ / \ _ __ ___| |__ _ _| |
  4. | | | '_ \ / _ \ / _ \ | '_ \/ __| '_ \| | | | |
  5. | | | | | | __// ___ \| | | \__ \ | | | |_| | |
  6. |_| |_| |_|\___/_/ \_\_| |_|___/_| |_|\__,_|_|
  7.  
  8. */
  9. #include<bits/stdc++.h>
  10. #define ll long long
  11. #define pb push_back
  12. #define ppb pop_back
  13. #define endl '\n'
  14. #define mii map<ll int,ll int>
  15. #define msi map<string,ll int>
  16. #define mis map<ll int, string>
  17. #define rep(i,a,b) for(ll int i=a;i<b;i++)
  18. #define mpi map<pair<ll int,ll int>,ll int>
  19. #define pii pair<ll int,ll int>
  20. #define vi vector<ll int>
  21. #define vii vector<pair<ll int, ll int>>
  22. #define vs vector<string>
  23. #define all(a) (a).begin(),(a).end()
  24. #define F first
  25. #define S second
  26. #define sz(x) (ll int)x.size()
  27. #define hell 1000000007
  28. #define lbnd lower_bound
  29. #define ubnd upper_bound
  30. #define bs binary_search
  31. #define mp make_pair
  32. #define what_is(x) cerr << #x << " is " << x << endl;
  33. #define time cerr << "\nTime elapsed: " << 1000 * clock() / CLOCKS_PER_SEC << "ms\n";
  34. using namespace std;
  35. #define N 1005
  36. ll dp[N][N];
  37. ll n,p;
  38.  
  39. ll fun(ll i,ll j)
  40. {
  41. if(i==1)
  42. {
  43. if(j==1)
  44. return 1;
  45. else
  46. return 0;
  47. }
  48. if(!((p+1)*j>=p*i) || i<j)
  49. return 0;
  50. if(i==j)
  51. return 1;
  52. if(dp[i][j]!=-1)
  53. return dp[i][j];
  54. dp[i][j]=(fun(i-1,j)+fun(i-1,j-1))%hell;
  55. return dp[i][j];
  56. }
  57.  
  58. void solve()
  59. {
  60. cin>>n>>p;
  61. rep(i,0,n+1)
  62. {
  63. rep(j,0,n+1)
  64. dp[i][j]=-1;
  65. }
  66. ll ans=0;
  67. rep(i,0,n+1)
  68. {
  69. ans=(ans+fun(n,n-i))%hell;
  70. }
  71. cout<<ans<<endl;
  72. return;
  73. }
  74. int main()
  75. {
  76. ios_base::sync_with_stdio(false);
  77. cin.tie(0);
  78. cout.tie(0);
  79. int TESTS=1;
  80. cin>>TESTS;
  81. while(TESTS--)
  82. {
  83. solve();
  84. }
  85. time
  86. return 0;
  87. }
Advertisement
Add Comment
Please, Sign In to add comment