#include #include #include using namespace std; #include #include char aa[30]; char a[30]; char c[30]; char b[30]; long long countj; long long biao; void dfs(long long s,long long q,long long kk) { if(biao==1) return ; if(s==0&&q==0) { if(strcmp(a,b)<=0) { biao=1; for(long long i=0; i=1) { b[kk]='4'; dfs(s-1,q,kk+1); b[kk]=0; } if(q>=1) { b[kk]='7'; dfs(s,q-1,kk+1); b[kk]=0; } } int main() { long long test; scanf("%I64d",&test); while(test--) { memset(a,0,sizeof(a)); memset(c,0,sizeof(c)); memset(aa,0,sizeof(aa)); memset(b,0,sizeof(b)); long long x; scanf("%I64d",&x); if(x==0) {printf("47\n"); continue;} countj=0; biao=0; while(x) { aa[countj++]=x%10+'0'; x/=10; } long long j=0; for(long long i=countj-1; i>=0; i--) { a[j++]=aa[i]; } // prlong longf("%s",a); // prlong longf("\n"); if(countj%2==1) { countj++; for(long long i=0; i