문제

링크

풀이

#include <iostream>
#include <string>
using namespace std;
 
int a(int x) {
  return (x == 1 ? 2 : (x == 2 ? 1 : x));
}
 
int b(int x) {
  return (x == 1 ? 3 : (x == 3 ? 1 : x));
}
 
int c(int x) {
  return (x == 1 ? 4 : (x == 4 ? 1 : x));
}
 
int d(int x) {
  return (x == 2 ? 3 : (x == 3 ? 2 : x));
}
 
int e(int x) {
  return (x == 2 ? 4 : (x == 4 ? 2 : x));
}
 
int f(int x) {
  return (x == 3 ? 4 : (x == 4 ? 3 : x));
}
 
void solve(void) {
  string s; cin >> s;
 
  int p = 1, q = 4;
  for (char ch : s) {
    switch (ch) {
      case 'A': p = a(p); q = a(q); break;
      case 'B': p = b(p); q = b(q); break;
      case 'C': p = c(p); q = c(q); break;
      case 'D': p = d(p); q = d(q); break;
      case 'E': p = e(p); q = e(q); break;
      case 'F': p = f(p); q = f(q); break;
    }
  }
  cout << p << "\n" << q;
}
 
int main(void) {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
 
  solve();
  return 0;
}