제출 #844740

#제출 시각아이디문제언어결과실행 시간메모리
844740HakiersGrowing Vegetable is Fun 3 (JOI19_ho_t3)C++17
0 / 100
1 ms452 KiB
#include <bits/stdc++.h>
using namespace std;
int n;
string s;
int moves;


void repair(int idx){
	while(idx - 1 > 0 && s[idx] != s[idx-1] && (s[idx-1] == s[idx-2] || s[idx] == s[idx+1])){
		swap(s[idx], s[idx-1]);
		moves++;
		idx--;
	}
	
	

}

int solve(){
	
	
	for(int i = 1; i < n; i++)
		if(s[i] != s[i-1]) repair(i);
	

	for(int i = 1; i < n; i++)
		if(s[i] == s[i-1]) return - 1;
		
	return moves;

}

int main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cin >> n >> s;
	
	cout << solve() << "\n";
	
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...