#include #include using namespace std; struct str{int g,S,h;}; str s[10]; char a[505],v[505],V[505],t1[505],t2[505],t3[505],t4[505]; int n,i,T1,T2,nr1,nr2,p,nr,z,q,j; inline void cop(char x[],char y[]) { int i; for(i=0;i<=500;++i) x[i]=y[i]; } bool compar(char x[],char y[]) { int i; for(i=0;i<=500;++i) if(x[i]y[i]) return false; return true; } bool egal(char x[],char y[]) { int i; for(i=0;i<=500;++i) if(x[i]y[i]) return false; return true; } bool cmp(str x,str y) { int x1,x2; if(x.S>y.S) return true; if(x.Sy.g) return true; if(x.g='0') { nr1=nr1*10+a[p]-'0';++p; } ++p; while(a[p]<='9' && a[p]>='0') { nr2=nr2*10+a[p]-'0';++p; } if(nr1>nr2) s[T1].S+=3; else if(nr1==nr2) { s[T1].S++; s[T2].S++; } else s[T2].S+=3; s[T1].g+=nr1; s[T2].g+=nr2; } s[1].h=1;s[2].h=2;s[3].h=3;s[4].h=4; sort(s+1,s+5,cmp); for(i=1;i<=4;++i) { q=s[i].h; j=1; if(q==1) while(t1[j]!='0') { printf("%c",t1[j]); ++j; } else if(q==2) while(t2[j]!='0') { printf("%c",t2[j]); ++j; } else if(q==3) while(t3[j]!='0') { printf("%c",t3[j]); ++j; } else if(q==4) while(t4[j]!='0') { printf("%c",t4[j]); ++j; } printf("\n"); } return 0; }