| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1336411 | yc11 | Bikeparking (EGOI24_bikeparking) | C++20 | 1095 ms | 6748 KiB |
#include<bits/stdc++.h>
using namespace std;
int n;
vector<int> n1;
vector<int> n2;
int n3[100][101][101];
signed main(){
cin>>n;
n1.resize(n);
n2.resize(n);
for (int i = 0;i<100;i++){
for (int j = 0;j<=100;j++){
for (int k = 0;k<=100;k++) n3[i][j][k] = -1e9;
}
}
for (int i = 0;i<n;i++) cin>>n1[i];
for (int i = 0;i<n;i++) cin>>n2[i];
for (int s = 0;s<=min(n1[0],n2[0]);s++){
for (int f = 0;f<100;f++){
if (f==0) n3[0][0][s] = s-n2[0];
else n3[0][f][s] = -1e9;
}
}
for (int id = 1;id<n;id++){
for (int s = 0;s<=min(n2[id],n1[id]);s++){
for (int f = 0;f<=n2[id]-s;f++){
int ans1 = -1e9;
for (int i = 0;i<=min(min(n2[id],n1[id]),n1[id-1]-f);i++){
for (int j = 0;j<=min(n1[id-1],n2[id]-i);j++){
ans1 = max(ans1,n3[id-1][j][i]+f-(n2[id]-f-s));
}
}
n3[id][f][s] = ans1;
}
}
}
int ans = -1e18;
for (int i = 0;i<=min(n2[n-1],n1[n-1]);i++){
for (int j = 0;j<=min(n2[n-1]-i,n1[n-2]);j++){
ans = max(ans,n3[n-1][j][i]);
}
}
cout<<ans<<"\n";
return 0;
}컴파일 시 표준 에러 (stderr) 메시지
| # | 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... | ||||
