#include <stdio.h>#include<string.h>#include<iostream>#include<algorithm>using namespacestd;classbearcheats{ Public: stringEyesight (intAintB) { Chart[ the]; stringS1; sprintf (T,"%d", A); S1=T; stringS2; Chart2[ the]; sprintf (T2,"%d", B); S2=T2; if(S1.size ()! =s2.size ())return "glasses"; intflag=0; for(intI=0; I<s1.size (); i++) if(s1[i]!=S2[i]) flag++; if(flag>1) return "glasses"; return "Happy"; }};
#include <stdio.h>#include<string.h>#include<iostream>#include<algorithm>#include<queue>using namespacestd;classbearplaysdiv2{ Public: intvis[ -][ -]; structNode {inta[3]; }; stringEqualpiles (intAintBintC) {memset (Vis,0,sizeof(VIS)); Node kiss; kiss.a[0]=a,kiss.a[1]=b,kiss.a[2]=b; intsum=kiss.a[0]+kiss.a[1]+kiss.a[2]; if(sum%3!=0) return "Impossible"; Sort (KISS.A,KISS.A+3); vis[kiss.a[0]][kiss.a[1]]=1; Queue<node>Q; Q.push (Kiss); while(!Q.empty ()) {Node now=Q.front (); if(now.a[0]==sum/3&&now.a[1]==sum/3) return "possible"; Q.pop (); for(intI=0;i<3; i++) { for(intj=i+1;j<3; j + +) { if(now.a[i]!=Now.a[j]) {Node Next=Now ; NEXT.A[J]=next.a[j]-Next.a[i]; Next.a[i]=next.a[i]+Next.a[i]; Sort (next.a,next.a+3); if(!vis[next.a[0]][next.a[1]]) {vis[next.a[0]][next.a[1]]=1; Q.push (next); } } } } } return "Impossible"; }};
C Topic long ah, good sleepy ah, sleep ...
TC SRM 664 Div2 AB