Submission #1267944

#TimeUsernameProblemLanguageResultExecution timeMemory
1267944gry3125Trains (BOI24_trains)C++20
0 / 100
2096 ms28236 KiB
#include <bits/stdc++.h> #define pb push_back #define ll long long int #define all(v) (v).begin(),(v).end() #define fi first #define se second using namespace std; int n; set<int> adj[100005]; vector<ll> ans(100005); int main() { cin >> n; for (int i = 1; i <= n; i++) { ll d, x; cin >> d >> x; for (int j = 1; d > 0 && j <= x && i+j*d <= n; j++) { adj[i+j*d].insert(i+(j-1)*d); } } ll cur = 0; ans[1] = 1; for (int i = 1; i <= n; i++) { for (auto j : adj[i]) { ans[i] += ans[j]; ans[i] %= (ll)1e9+7; } cur += ans[i]; cur %= (ll)1e9+7; } cout << cur; 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...