이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#include "boxes.h"
#define PB push_back
#define F first
#define S second
using namespace std;
pair<long long, long long>teams[10000002];
int kt, lt, n;
int dp(int poscur, int ksobrante){
return 0;
}
long long delivery(int N, int K, int L, int p[]) {
int ant = p[0], rep = 1, pointer = 0;
kt=K, n = N, lt = L;
if(N==1){
teams[0]={ant, 1};
pointer++;
}
for(int i = 1 ; i < N ; i++){
if(p[i]!=ant){
teams[pointer++]={ant, rep};
rep=1;
}else {
rep++;
}
ant=p[i];
if(i==N-1){
teams[pointer++]={ant, rep};
rep=1;
}
}
//for(int i = 0 ; i < pointer ; i ++)cout<<teams[i].F<<" "<<teams[i].S<<endl;
int mx=L/2, temp=-1;
long long sm = 0;
if(K==1){
for(int i = 0 ; i < pointer ; i++){
if(teams[i].F>mx){
temp=i;
break;
}
sm+=teams[i].S*2*teams[i].F;
}
if(temp!=-1){
for(int i = pointer-1 ; i >= temp ; i--){
sm+=teams[i].S*2*(L-teams[i].F);
}
}
}else{
int mn = 0, mp = pointer-1;
if(teams[mp].F<=mx)sm=teams[mp].F*2;
else if (teams[mn].F>mx)sm=(L-teams[mn].F)*2;
else sm=L;
}
return sm;
}
컴파일 시 표준 에러 (stderr) 메시지
boxes.cpp: In function 'int dp(int, int)':
boxes.cpp:9:12: warning: unused parameter 'poscur' [-Wunused-parameter]
9 | int dp(int poscur, int ksobrante){
| ~~~~^~~~~~
boxes.cpp:9:24: warning: unused parameter 'ksobrante' [-Wunused-parameter]
9 | int dp(int poscur, int ksobrante){
| ~~~~^~~~~~~~~
# | 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... |