Trik

0010

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;

char s[51];
int p[3] = {0, 1, 2}; // เก็บว่าแต่ละตำแหน่งจากซ้ายไปขวามีแก้วใบที่เท่าไหร่ในที่นั้น 
int main() {
  scanf("%s", s);
  for (int i = 0; i < strlen(s); i++) {
    if (s[i] == 'A') {
      swap(p[0], p[1]);
    } else if (s[i] == 'B') {
      swap(p[1], p[2]);
    } else {
      swap(p[0], p[2]);
    }
  }
  // ดำเนินการหาว่าแก้วใบที่ 0 ซึ่งคือแก้วที่มีลูกบอล อยู่ที่ตำแน่งใด
  for (int i = 0; i < 3; i++) {
    if (p[i] == 0) {
      printf("%d", i + 1); // ต้องบวก 1 เนื่องจาก index เริ่มจาก 0
    }
  }
}