#include using namespace std; bool check(string s){ sort(s.begin(),s.end()); for(int i=1;i s; for(int i=0;i<=99999;i++){ int v=i; string cur; for(int j=0;j<5;j++){ cur.push_back('0'+v%10); v/=10; } reverse(cur.begin(),cur.end()); if(check(cur)){s.push_back(cur);} } vector alive; for(int i=0;i fl(32,0); vector> hb(30); for(auto &nx : hb){ cin >> nx.first >> nx.second; fl[nx.first*6+nx.second]=1; } if(hb[0].first==5){return 0;} vector und; for(auto &nx : alive){ if(fl[hbc(q,s[nx])]){und.push_back(nx);} } alive=und; } }