ABC 023 B 手芸王
問題
方針
“b” から初めて,長さが $N$ 以上になるまで実際に作っていく.
実装
signed main(){
ios_base::sync_with_stdio(0); cin.tie(0);
int N;
cin >> N;
string s;
cin >> s;
string cur = "b";
int step = 1;
while(cur.size() < s.size()){
int sw = step%3;
if(sw==1){
cur = "a" + cur + "c";
} else if(sw==2){
cur = "c" + cur + "a";
} else {
cur = "b" + cur + "b";
}
++step;
}
cout << (s==cur ? step-1 : -1) << endl;
}