이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "boxes.h"
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0; i<(n); i++)
#define all(x) x.begin(),x.end()
using ll=long long;
const ll INF=1LL<<60;
long long delivery(int N, int K, int L, int p[]) {
vector<int> ps;
rep(i,N){
if(p[i]!=0)ps.emplace_back(p[i]);
}
N=ps.size();
vector<ll> dp(N+1,0);
rep(i,N){
dp[i+1]=ps[i]+dp[max(0,i+1-K)]+min(ps[i],L-ps[i]);
}
rep(i,N){
ps[i]=(L-ps[i])%L;
}
reverse(all(ps));
vector<ll> dp2(N+1,0);
rep(i,N){
dp2[i+1]=ps[i]+dp2[max(0,i+1-K)]+min(ps[i],L-ps[i]);
}
ll ans=INF;
rep(i,N+1){
ans=min(ans,dp[i]+dp2[N-i]);
}
return ans;
}
컴파일 시 표준 에러 (stderr) 메시지
boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:14:14: warning: conversion from 'std::vector<int>::size_type' {aka 'long unsigned int'} to 'int' may change value [-Wconversion]
14 | N=ps.size();
| ~~~~~~~^~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |