제출 #219797

#제출 시각아이디문제언어결과실행 시간메모리
219797Nightlight선물상자 (IOI15_boxes)C++14
10 / 100
5 ms384 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; long long dpL[10000005], dpR[10000005]; long long delivery(int N, int K, int L, int p[]) { for(int i = 1; i <= N; i++) { dpL[i] = p[i - 1] * 2LL; if(i > K) dpL[i] += dpL[i - K]; } for(int i = N; i > 0; i--) { dpR[i] = (L - p[i - 1]) * 2LL; if(N - i > K) dpR[i] += dpR[i + K]; } long long ans = 1e18; for(int i = 0; i <= N; i++) { ans = min(ans, dpL[i] + dpR[i + 1]); } long long res; for(long long j = 1; j <= N / K; j++) { res = 1e18; for(int l = 1, r = K * j; r <= N; l++, r++) { res = min(res, dpL[l - 1] + dpR[r + 1]); } if(res + j * L >= ans) res = res; else ans = res + j * L; } return ans; }

컴파일 시 표준 에러 (stderr) 메시지

boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:23:26: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
     for(int l = 1, r = K * j; r <= N; l++, r++) {
                        ~~^~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...