#include using namespace std; typedef long long ll; typedef pair lpair; const ll MOD = 1e9 + 7; const ll INF = 1e18; #define rep(i,m,n) for(ll i = (m); i < (n); i++) #define rrep(i,m,n) for(ll i = (m); i >= (n); i--) #define print(x) cout << (x) << endl; #define print2(x,y) cout << (x) << " " << (y) << endl; #define printa(x,n) for(ll i = 0; i < n; i++){ cout << (x[i]) << " ";} cout<=r && hand[i+2]>=r){ a=b-r; b=hand[i+2]-r; } else return false; } if(a%3==0 && b%3==0) return true; else return false; } bool iswh2(int* hand) { int p = 0; for(int i=0; i<9; i++){ p += i*hand[i]; } for(int i=p*2%3; i<9; i+=3){//ここでiを、牌の和を3で割った余りを2で割った数に初期化 hand[i] -= 2; if(hand[i]>=0){ if(iswh0(hand)){ hand[i] += 2; return true; } } hand[i] += 2; } return false; } int main(){ cin.tie(0); ios::sync_with_stdio(false); string S; cin >> S; sort(S.begin(), S.end()); rep(t,1,10){ bool ok = false; int hand[10] = {}; rep(i,0,S.size()) hand[S[i] - '1']++; hand[t-1]++; // 七対子 ll cnt_2 = 0; rep(i,0,9){ if(hand[i] == 2) cnt_2++; } if(cnt_2 == 7) ok = true; if(iswh2(hand)) ok = true; if(ok){ if(hand[t-1] != 5) print(t); } } }