| 17087 | 2025-05-21 15:54:19 | tomi7 | Négyzetrács festés | cpp17 | Wrong answer 0/100 | 405ms | 11564 KiB |
// Source: https://usaco.guide/general/io
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, m;cin>>n>>m;
vector<int> feketejobb;
vector<int> feherjobb;
vector<int> feketebal;
vector<int> feherbal;
vector<int> pref;
vector<int> pref1;
vector<int> pref2;
vector<int> pref3;
for(int i=0;i<n+m-1;i++){
int x;cin>>x;
if(i%2==0){
if(pref.size()!=0){
pref.push_back(pref.back()+x);
}else{
pref.push_back(x);
}
feketejobb.push_back(x);
}else{
if(pref1.size()!=0){
pref1.push_back(pref1.back()+x);
}else{
pref1.push_back(x);
}
feherjobb.push_back(x);
}
}
for(int i=0;i<n+m-1;i++){
int x;cin>>x;
if(m%2==1 && i%2==0 || m%2==0 && i%2==1){
if(pref2.size()!=0){
pref2.push_back(pref2.back()+x);
}else{
pref2.push_back(x);
}
feketebal.push_back(x);
}else{
if(pref3.size()!=0){
pref3.push_back(pref3.back()+x);
}else{
pref3.push_back(x);
}
feherbal.push_back(x);
}
}
/* for(int y: feketebal){
cout<<y<<' ';
}
cout<<endl;
for(int y: feherbal){
cout<<y<<' ';
}
cout<<endl;
for(int y: feketejobb){
cout<<y<<' ';
}
cout<<endl;
for(int y: feherjobb){
cout<<y<<' ';
}*/
// cout<<endl;
vector<int> dpjobb;
vector<int> dpbal;
vector<int> dpdpjobb;
vector<int> dddpbal;
dpjobb.push_back(feketejobb[0]);
dpbal.push_back(feketebal[0]);
dpdpjobb.push_back(feherjobb[0]);
dddpbal.push_back(feherbal[0]);
while(dpjobb.size()!=(n+m)/2){
if(dpjobb.size()<=m/2){
dpjobb.push_back(dpjobb.back()+feketejobb[dpjobb.size()]);
dpbal.push_back(dpbal.back()+feketebal[dpbal.size()]);
}else{
dpjobb.push_back(min(dpjobb.back()+feketejobb[dpjobb.size()], dpbal[dpjobb.size()-m/2]+pref[dpjobb.size()]-pref[dpjobb.size()-m/2]));
dpbal.push_back(min(dpbal.back()+feketebal[dpbal.size()], dpjobb[dpbal.size()-m/2]+pref2[dpbal.size()]-pref2[dpbal.size()-m/2]));
}
// cout<<dpjobb.back()<<' '<<dpbal.back()<<'\n';
}
while(dddpbal.size()!=(n+m)/2){
if(dpdpjobb.size()<=m/2){
dpdpjobb.push_back(dpdpjobb.back()+feherjobb[dpdpjobb.size()]);
dddpbal.push_back(dddpbal.back()+feherbal[dddpbal.size()]);
}else{
dpdpjobb.push_back(min(dpdpjobb.back()+feherjobb[dpdpjobb.size()], dddpbal[dpdpjobb.size()-m/2]+pref1[dpdpjobb.size()]-pref1[dpdpjobb.size()-m/2]));
dddpbal.push_back(min(dddpbal.back()+feherbal[dddpbal.size()], dpdpjobb[dddpbal.size()-m/2]+pref3[dddpbal.size()]-pref3[dddpbal.size()-m/2]));
}
// cout<<dpdpjobb.back()<<' '<<dddpbal.back()<<'\n';
}
cout<<min(dpjobb.back(), dpbal.back())+min(dpdpjobb.back(), dddpbal.back());
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/10 | ||||||
| 1 | Accepted | 1ms | 508 KiB | ||||
| 2 | Accepted | 1ms | 512 KiB | ||||
| 3 | Wrong answer | 1ms | 316 KiB | ||||
| 4 | Wrong answer | 1ms | 320 KiB | ||||
| 5 | Accepted | 1ms | 316 KiB | ||||
| 6 | Wrong answer | 1ms | 316 KiB | ||||
| 7 | Wrong answer | 1ms | 508 KiB | ||||
| 8 | Wrong answer | 1ms | 316 KiB | ||||
| 9 | Wrong answer | 1ms | 316 KiB | ||||
| subtask2 | 0/10 | ||||||
| 1 | Wrong answer | 1ms | 316 KiB | ||||
| 2 | Wrong answer | 1ms | 316 KiB | ||||
| 3 | Wrong answer | 1ms | 508 KiB | ||||
| 4 | Wrong answer | 1ms | 500 KiB | ||||
| 5 | Wrong answer | 1ms | 316 KiB | ||||
| 6 | Wrong answer | 1ms | 316 KiB | ||||
| 7 | Wrong answer | 1ms | 316 KiB | ||||
| 8 | Wrong answer | 1ms | 316 KiB | ||||
| 9 | Wrong answer | 1ms | 316 KiB | ||||
| subtask3 | 0/10 | ||||||
| 1 | Wrong answer | 1ms | 384 KiB | ||||
| 2 | Wrong answer | 1ms | 316 KiB | ||||
| 3 | Wrong answer | 1ms | 316 KiB | ||||
| 4 | Wrong answer | 1ms | 316 KiB | ||||
| 5 | Wrong answer | 1ms | 316 KiB | ||||
| 6 | Wrong answer | 1ms | 316 KiB | ||||
| 7 | Wrong answer | 1ms | 316 KiB | ||||
| 8 | Wrong answer | 1ms | 320 KiB | ||||
| 9 | Wrong answer | 1ms | 316 KiB | ||||
| 10 | Wrong answer | 1ms | 316 KiB | ||||
| subtask4 | 0/20 | ||||||
| 1 | Wrong answer | 4ms | 316 KiB | ||||
| 2 | Wrong answer | 4ms | 316 KiB | ||||
| 3 | Wrong answer | 4ms | 316 KiB | ||||
| 4 | Wrong answer | 4ms | 316 KiB | ||||
| 5 | Wrong answer | 4ms | 432 KiB | ||||
| 6 | Wrong answer | 2ms | 396 KiB | ||||
| 7 | Wrong answer | 2ms | 316 KiB | ||||
| 8 | Wrong answer | 3ms | 416 KiB | ||||
| 9 | Wrong answer | 2ms | 400 KiB | ||||
| 10 | Wrong answer | 3ms | 316 KiB | ||||
| 11 | Wrong answer | 3ms | 316 KiB | ||||
| 12 | Wrong answer | 3ms | 484 KiB | ||||
| 13 | Wrong answer | 3ms | 456 KiB | ||||
| subtask5 | 0/10 | ||||||
| 1 | Wrong answer | 190ms | 5848 KiB | ||||
| 2 | Wrong answer | 188ms | 5984 KiB | ||||
| 3 | Wrong answer | 188ms | 5848 KiB | ||||
| 4 | Wrong answer | 195ms | 5876 KiB | ||||
| 5 | Wrong answer | 202ms | 5916 KiB | ||||
| 6 | Wrong answer | 172ms | 6000 KiB | ||||
| 7 | Runtime error | 1ms | 316 KiB | ||||
| subtask6 | 0/20 | ||||||
| 1 | Wrong answer | 405ms | 11524 KiB | ||||
| 2 | Wrong answer | 379ms | 11564 KiB | ||||
| 3 | Wrong answer | 382ms | 11524 KiB | ||||
| 4 | Wrong answer | 386ms | 11528 KiB | ||||
| 5 | Wrong answer | 384ms | 11548 KiB | ||||
| 6 | Wrong answer | 284ms | 11472 KiB | ||||
| 7 | Wrong answer | 368ms | 11544 KiB | ||||
| subtask7 | 0/20 | ||||||
| 1 | Wrong answer | 173ms | 5916 KiB | ||||
| 2 | Wrong answer | 179ms | 5932 KiB | ||||
| 3 | Wrong answer | 188ms | 5868 KiB | ||||
| 4 | Wrong answer | 143ms | 5916 KiB | ||||
| 5 | Wrong answer | 190ms | 5804 KiB | ||||
| 6 | Wrong answer | 187ms | 5916 KiB | ||||
| 7 | Wrong answer | 145ms | 5892 KiB | ||||
| 8 | Wrong answer | 188ms | 5896 KiB | ||||
| 9 | Wrong answer | 190ms | 5940 KiB | ||||
| 10 | Wrong answer | 197ms | 6096 KiB | ||||
| 11 | Wrong answer | 216ms | 6560 KiB | ||||
| 12 | Wrong answer | 239ms | 7160 KiB | ||||
| 13 | Wrong answer | 287ms | 11468 KiB | ||||
| 14 | Wrong answer | 342ms | 11448 KiB | ||||