Submission #338295

#TimeUsernameProblemLanguageResultExecution timeMemory
338295GandhiGrowing Vegetable is Fun 3 (JOI19_ho_t3)C++17
0 / 100
1 ms492 KiB
#include <iostream> using namespace std; int main() { int n; string s; string ss; char c='R'; cin>>n>>s; int sum; sum=0; int r=0; int g=0; for(int i=0;i<n;++i) { if(s[i]=='R') { ++r; } else { ++g; } } if(max(g-r,r-g)>1) { cout<<-1; return 0; } if(r>g) { for(int i=0;i<n;++i) { if(i%2==0) { for(int j=i;j<n;++j) { if(s[j]=='R') { sum+=max(0,j-i); s[j]=s[i]; s[i]='R'; break; } } } else { for(int j=i;j<n;++j) { if(s[j]=='G') { sum+=max(0,j-i); s[j]=s[i]; s[i]='G'; break; } } } } } else if(g>r) { for(int i=0;i<n;++i) { if(i%2==1) { for(int j=i;j<n;++j) { if(s[j]=='R') { sum+=max(0,j-i); s[j]=s[i]; s[i]='R'; break; } } } else { for(int j=i;j<n;++j) { if(s[j]=='G') { sum+=max(0,j-i); s[j]=s[i]; s[i]='G'; break; } } } } } else { if(s[0]=='R') { c='G'; } for(int i=0;i<n;++i) { if(i%2==0) { for(int j=i;j<n;++j) { if(s[j]==s[0]) { sum+=max(0,j-i); s[j]=s[i]; s[i]=s[0]; break; } } } else { for(int j=i;j<n;++j) { if(s[j]!=s[0]) { sum+=max(0,j-i); s[j]=s[i]; s[i]=c; break; } } } } } cout<<sum; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...