제출 #160808

#제출 시각아이디문제언어결과실행 시간메모리
160808GioChkhaidze선물상자 (IOI15_boxes)C++14
100 / 100
673 ms372380 KiB
#include <bits/stdc++.h> #include "boxes.h" using namespace std; const int N=2e7+5; long long n,k,l,x,ANS,a[N],Dl[N],Dr[N]; long long delivery(int N, int K, int L, int p[]) { n=N,k=K,l=L; if (n==k) ANS=l; else ANS=1e18; for (int i=1; i<=n; i++) { a[i]=p[i-1]; int last=i-k; if (1<=last) Dl[i]=Dl[last]+a[i]*2; else Dl[i]=a[i]*2; } for (int i=n; i>=1; i--) { int last=i+k; if (last<=n) Dr[i]=Dr[last]+(l-a[i])*2; else Dr[i]=(l-a[i])*2; } ANS=min(ANS,Dl[n]); ANS=min(ANS,Dr[1]); for (int i=0; i<n; i++) { ANS=min(ANS,Dl[i]+Dr[i+1]); ANS=min(ANS,l+Dl[i]+Dr[i+k+1]); } return ANS; }

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

boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:7:48: warning: declaration of 'N' shadows a global declaration [-Wshadow]
 long long delivery(int N, int K, int L, int p[]) {
                                                ^
boxes.cpp:4:11: note: shadowed declaration is here
 const int N=2e7+5;
           ^
boxes.cpp:15:13: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
   int last=i-k;
            ~^~
boxes.cpp:20:13: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
  for (int i=n; i>=1; i--) {
             ^
boxes.cpp:21:13: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
   int last=i+k;
            ~^~
#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...