제출 #134799

#제출 시각아이디문제언어결과실행 시간메모리
134799tinjyu선물상자 (IOI15_boxes)C++14
20 / 100
2 ms380 KiB
#include "boxes.h" #include <iostream> long long int n,k,l,sum[10000005][2]; using namespace std; long long delivery(int N, int K, int L, int p[]) { n=N; k=K; l=L; int mid=n; for(int i=0;i<n;i++) { if(l/2<p[i]) { mid=i; break; } } long long tmp=0; for(int i=0;i<mid;i++) { sum[i][0]=tmp+p[i]; if((i+1)%k==0)tmp+=p[i]; //cout<<sum[i][0]<<" "<<tmp<<endl; } tmp=0; for(int i=n-1;i>=mid;i--) { sum[i][1]=tmp+(l-p[i]); if((n-i)%k==0)tmp+=(l-p[i]); } long long int ans=sum[mid-1][0]*2+sum[mid][1]*2; //cout<<sum[mid-1][0]<<" "<<sum[mid][1]<<endl; for(int i=mid-1;i>=mid-k && i>=-1;i--) { tmp=0; if(i>=0)tmp=sum[i][0]*2; if(i+k+1<n)tmp+=sum[i+k+1][1]*2; //cout<<i<<" "<<sum[i][0]<<" "<<i+k+1<<" "<<sum[i+k+1][1]<<endl; tmp+=l; ans=min(tmp,ans); } return ans; }

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

boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:10:10: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
  int mid=n;
          ^
boxes.cpp:27:13: warning: conversion to 'int' from 'long long int' may alter its value [-Wconversion]
  for(int i=n-1;i>=mid;i--)
            ~^~
#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...