Submission #477828

#TimeUsernameProblemLanguageResultExecution timeMemory
477828sumit_kk10Walking (NOI12_walking)C++17
25 / 25
1 ms336 KiB
#include <bits/stdc++.h> #define fast ios_base::sync_with_stdio(0);cin.tie(NULL);cout.tie(NULL) #define ll long long int #define ld long double using namespace std; const int N = 1e6 + 5; const int MOD = 1e9 + 7; int len, n; pair<int, int> tim[N]; void solve(){ cin >> len >> n; for(int i = 1; i <= n; ++i) cin >> tim[i].first >> tim[i].second; sort(tim + 1, tim + n + 1); int dp[n + 1], ans = 0; for(int i = 1; i <= n; ++i) dp[i] = 1; for(int i = n - 1; i >= 1; --i){ for(int j = i + 1; j <= n; ++j){ ld cur = (ld) ((ld) len/(ld) tim[i].second) + tim[i].first; if(cur > (ld) ((ld) len / (ld) tim[j].second) + tim[j].first) dp[i] = max(dp[i], dp[j] + 1); } ans = max(ans, dp[i]); } cout << ans << "\n"; } int main(){ fast; int t = 1; // cin >> t; while(t--) solve(); 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...