10973 | 2024. 04. 24 17:59:17 | Kristóf | Zebra (75 pont) | cpp17 | Hibás válasz 0/75 | 3ms | 4000 KiB |
#include <iostream>
#include <vector>
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int old[n];
int ido[n];
for(int i=0;i<n;i++)
{
cin>>old[i];
}
for(int i=0;i<n;i++)
{
cin>>ido[i];
}
vector<int>egy;
vector<int>nulla;
vector<int>vala1;
vector<int>vala0;
int ans=0;
for(int i=0;i<n;i++)
{
if(old[i]==1)
{
egy.push_back(ido[i]);
}
else
{
nulla.push_back(ido[i]);
}
}
int idoseged;
int idoseged2;
if(nulla[0]<egy[0])
{
idoseged=nulla[0];
idoseged2=nulla[0];
}
else
{
idoseged=egy[0];
idoseged2=egy[0];
}
vector<int>::iterator it;
sort(nulla.begin(),nulla.end());
sort(egy.begin(),egy.end());
for(int i=0;i<n;i++)
{
if(idoseged!=idoseged2)
{
ans+=vala1.size();
ans+=vala0.size();
idoseged2=idoseged;
ans--;
//cout<<ans<<" "<<"answer"<<vala0.size()<<" "<<vala1.size()<<endl;
if(egy.size()<1 || nulla.size()<1)
{
//cout<<"in&out"<<endl;
if(nulla.size()<1)
{
for(int i=0;i<egy.size();i++)
{
vala1.push_back(egy[i]);
idoseged2=egy[i];
if(idoseged2!=idoseged)
{
ans+=vala0.size();
ans+=vala1.size();
idoseged=idoseged2;
ans--;
}
}
break;
}
if(egy.size()<1)
{
for(int i=0;i<nulla.size();i++)
{
vala0.push_back(egy[i]);
idoseged2=nulla[i];
if(idoseged2!=idoseged)
{
ans+=vala0.size();
ans+=vala1.size();
idoseged=idoseged2;
ans--;
}
}
break;
}
}
//cout<<"cleared"<<endl;
if(vala1.size()>0 && vala0.size()>0){
vala0.clear();
vala1.clear();
}
}
//cout<<idoseged2<<" "<<idoseged<<endl;
if(egy[0]<nulla[0])
{
vala1.push_back(egy[0]);
idoseged=egy[0];
it=egy.begin();
egy.erase(it);
}
else
{
vala0.push_back(nulla[0]);
idoseged=nulla[0];
it=nulla.begin();
nulla.erase(it);
}
}
cout<<ans<<endl;
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 0/75 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1688 KiB | |||
2 | Hibás válasz | 0/0 | 3ms | 1932 KiB | |||
3 | Hibás válasz | 0/5 | 3ms | 2080 KiB | |||
4 | Hibás válasz | 0/5 | 3ms | 2328 KiB | |||
5 | Hibás válasz | 0/5 | 3ms | 2544 KiB | |||
6 | Hibás válasz | 0/5 | 3ms | 2724 KiB | |||
7 | Hibás válasz | 0/5 | 3ms | 2720 KiB | |||
8 | Hibás válasz | 0/5 | 3ms | 2856 KiB | |||
9 | Hibás válasz | 0/5 | 3ms | 3036 KiB | |||
10 | Hibás válasz | 0/5 | 3ms | 3248 KiB | |||
11 | Hibás válasz | 0/5 | 3ms | 3336 KiB | |||
12 | Hibás válasz | 0/5 | 3ms | 3460 KiB | |||
13 | Hibás válasz | 0/5 | 3ms | 3672 KiB | |||
14 | Hibás válasz | 0/5 | 3ms | 3756 KiB | |||
15 | Hibás válasz | 0/5 | 3ms | 3756 KiB | |||
16 | Hibás válasz | 0/5 | 3ms | 3784 KiB | |||
17 | Hibás válasz | 0/5 | 3ms | 4000 KiB |