Submission #1028009

#TimeUsernameProblemLanguageResultExecution timeMemory
1028009AbitoTrains (BOI24_trains)C++17
0 / 100
8 ms2904 KiB
#include <bits/stdc++.h> #define F first #define S second #define pb push_back #define ppb pop_back #define ep insert #define endl '\n' #define elif else if #define pow pwr #define sqrt sqrtt #define int long long #define ll long long #define y1 YONE typedef unsigned long long ull; using namespace std; const int N=1e5+5,M=1e9+7; int dp[N],d[N],x[N],n,s[N]; int32_t main(){ ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); cin>>n; for (int i=1;i<=n;i++) cin>>d[i]>>x[i]; for (int i=n;i;i--){ if (!x[i] || !d[i]){ dp[i]=1; s[i]=s[i+1]+1; s[i]%=M; continue; } dp[i]=1+s[i+1]-s[min(n+1,i+x[i]+1)]; dp[i]%=M; s[i]=s[i+1]+dp[i]; s[i]%=M; } cout<<dp[1]<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...