Submission #619554

#TimeUsernameProblemLanguageResultExecution timeMemory
619554someoneBoxes with souvenirs (IOI15_boxes)C++14
Compilation error
0 ms0 KiB
//#include "boxes.h" #include <bits/stdc++.h> using namespace std; using ll = long long; const int N = 1e6 + 42; ll dp[N][2], pos[N]; ll delivery(int n, int k, int L, int p[]) { k = min(k, n); ll len = L; for(int i = 0; i < n; i++) pos[i] = p[i]; for(int i = 0; i < k; i++) dp[i][0] = pos[i]*2; for(int i = k; i < n; i++) dp[i][0] = pos[i]*2 + dp[i - k][0]; for(int i = n-1; i >= n-k; i--) dp[i][1] = (len - pos[i]) * 2; for(int i = n-k-1; i > -1; i--) dp[i][1] = (len - pos[i]) * 2 + dp[i + k][1]; ll ans = min(dp[n-1][0], dp[0][1]); for(int i = 0; i < n-k; i++) ans = min(ans, len + dp[i][0] + dp[i+k+1][1]); return ans; } signed main() { ll n, k, l; cin >> n >> k >> l; vector<int> p(n); for(int& i : p) cin >> i; cout << delivery(n, k, l, p); }

Compilation message (stderr)

boxes.cpp: In function 'int main()':
boxes.cpp:38:22: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   38 |     cout << delivery(n, k, l, p);
      |                      ^
boxes.cpp:38:25: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   38 |     cout << delivery(n, k, l, p);
      |                         ^
boxes.cpp:38:28: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   38 |     cout << delivery(n, k, l, p);
      |                            ^
boxes.cpp:38:31: error: cannot convert 'std::vector<int>' to 'int*'
   38 |     cout << delivery(n, k, l, p);
      |                               ^
      |                               |
      |                               std::vector<int>
boxes.cpp:10:38: note:   initializing argument 4 of 'll delivery(int, int, int, int*)'
   10 | ll delivery(int n, int k, int L, int p[]) {
      |                                  ~~~~^~~