public class Main {
public static String solution(String s, int k) {
StringBuilder current = new StringBuilder(s);
for (int i = 0; i < k; i++) {
StringBuilder next = new StringBuilder();
for (int j = 0; j < current.length(); j++) {
char c = current.charAt(j);
if (c == 'a') {
next.append("bc");
} else if (c == 'b') {
next.append("ca");
} else if (c == 'c') {
next.append("ab");
}
}
current = next;
}
return current.toString();
}
public static void main(String[] args) {
System.out.println(solution("abc", 2).equals("caababbcbcca"));
System.out.println(solution("abca", 3).equals("abbcbccabccacaabcaababbcabbcbcca"));
System.out.println(solution("cba", 1).equals("abcabc"));
}
}