Submission #114163

#TimeUsernameProblemLanguageResultExecution timeMemory
114163jwvg0425코알라 (JOI13_koala)C++17
30 / 100
2041 ms3920 KiB
#include <stdio.h> #include <vector> #include <queue> #include <algorithm> #include <iostream> #include <string> #include <bitset> #include <map> #include <set> #include <tuple> #include <string.h> #include <math.h> #include <random> #include <functional> #include <assert.h> #include <math.h> #include <iterator> #include <chrono> #define MOD 1000000007 #define all(x) (x).begin(), (x).end() #define xx first #define yy second using namespace std; using i64 = long long int; using ii = pair<int, int>; using ii64 = pair<i64, i64>; i64 d, a; i64 b[100005]; i64 pos[100005]; bool work[105]; i64 cost[105]; i64 last[105]; int main() { i64 k, m, n; scanf("%lld %lld %lld %lld %lld", &k, &m, &d, &a, &n); pos[0] = k; pos[n + 1] = m; for (int i = 1; i <= n; i++) scanf("%lld %lld", &pos[i], &b[i]); cost[k%d] = 0; work[k%d] = true; last[k%d] = k; for (int i = 1; i <= n + 1; i++) { bool isFirst = true; i64 nowCost = 0; i64 nowLast = 0; for (int di = 0; di < d; di++) { if (!work[di]) continue; i64 c = cost[di] + b[i]; c -= (pos[i] - last[di] + d - 1) / d * a; if (isFirst || c > nowCost) { nowCost = c; nowLast = pos[i]; isFirst = false; } } cost[pos[i] % d] = nowCost; last[pos[i] % d] = nowLast; work[pos[i] % d] = true; } printf("%lld\n", cost[pos[n + 1] % d]); return 0; }

Compilation message (stderr)

koala.cpp: In function 'int main()':
koala.cpp:41:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld %lld %lld %lld %lld", &k, &m, &d, &a, &n);
  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
koala.cpp:47:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%lld %lld", &pos[i], &b[i]);
   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...