Result: Accepted
Time: 6ms
Memory: 1716kB
/*#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
using namespace std;
int T,n,i;
char S[1025][1025];
void solve(int t,int geshu)
{
int j,flag;
if(geshu==0)return ;
for(j=1;j<=geshu;j++)
{
S[t/2][j]='*';
}
for(j=1;j<=geshu;j++)
{
S[t+t/2][j]=' ';
}
for(;j<=geshu;j++)
{
S[t+t/2][j]='*';
}
solve(t-geshu,geshu/2);
solve(t+geshu,geshu/2);
}
int main()
{
scanf("%d",&T);
for(i=1;i<=T;i++)
{
scanf("%d",&n);
for(int j=1;j<=n;j++)
S[n][j]='*';
solve(n,n/2);
}
system("pause");
} */
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
using namespace std;
int T,i,m,k,j;
char s[10];
int e[35],fugai[35];
void ppd(int j)
{
if(e[j]==0&&e[j+1]==0&&e[j+2]==0&&e[j+3]==0)printf("0");
if(e[j]==0&&e[j+1]==0&&e[j+2]==0&&e[j+3]==1)printf("1");
if(e[j]==0&&e[j+1]==0&&e[j+2]==1&&e[j+3]==0)printf("2");
if(e[j]==0&&e[j+1]==0&&e[j+2]==1&&e[j+3]==1)printf("3");
if(e[j]==0&&e[j+1]==1&&e[j+2]==0&&e[j+3]==0)printf("4");
if(e[j]==0&&e[j+1]==1&&e[j+2]==0&&e[j+3]==1)printf("5");
if(e[j]==0&&e[j+1]==1&&e[j+2]==1&&e[j+3]==0)printf("6");
if(e[j]==0&&e[j+1]==1&&e[j+2]==1&&e[j+3]==1)printf("7");
if(e[j]==1&&e[j+1]==0&&e[j+2]==0&&e[j+3]==0)printf("8");
if(e[j]==1&&e[j+1]==0&&e[j+2]==0&&e[j+3]==1)printf("9");
if(e[j]==1&&e[j+1]==0&&e[j+2]==1&&e[j+3]==0)printf("a");
if(e[j]==1&&e[j+1]==0&&e[j+2]==1&&e[j+3]==1)printf("b");
if(e[j]==1&&e[j+1]==1&&e[j+2]==0&&e[j+3]==0)printf("c");
if(e[j]==1&&e[j+1]==1&&e[j+2]==0&&e[j+3]==1)printf("d");
if(e[j]==1&&e[j+1]==1&&e[j+2]==1&&e[j+3]==0)printf("e");
if(e[j]==1&&e[j+1]==1&&e[j+2]==1&&e[j+3]==1)printf("f");
}
void pd(char x)
{
if(x=='0'){e[4*j+1]=0;e[4*j+2]=0;e[4*j+3]=0;e[4*j+4]=0;}
if(x=='1'){e[4*j+1]=0;e[4*j+2]=0;e[4*j+3]=0;e[4*j+4]=1;}
if(x=='2'){e[4*j+1]=0;e[4*j+2]=0;e[4*j+3]=1;e[4*j+4]=0;}
if(x=='3'){e[4*j+1]=0;e[4*j+2]=0;e[4*j+3]=1;e[4*j+4]=1;}
if(x=='4'){e[4*j+1]=0;e[4*j+2]=1;e[4*j+3]=0;e[4*j+4]=0;}
if(x=='5'){e[4*j+1]=0;e[4*j+2]=1;e[4*j+3]=0;e[4*j+4]=1;}
if(x=='6'){e[4*j+1]=0;e[4*j+2]=1;e[4*j+3]=1;e[4*j+4]=0;}
if(x=='7'){e[4*j+1]=0;e[4*j+2]=1;e[4*j+3]=1;e[4*j+4]=1;}
if(x=='8'){e[4*j+1]=1;e[4*j+2]=0;e[4*j+3]=0;e[4*j+4]=0;}
if(x=='9'){e[4*j+1]=1;e[4*j+2]=0;e[4*j+3]=0;e[4*j+4]=1;}
if(x=='a'){e[4*j+1]=1;e[4*j+2]=0;e[4*j+3]=1;e[4*j+4]=0;}
if(x=='b'){e[4*j+1]=1;e[4*j+2]=0;e[4*j+3]=1;e[4*j+4]=1;}
if(x=='c'){e[4*j+1]=1;e[4*j+2]=1;e[4*j+3]=0;e[4*j+4]=0;}
if(x=='d'){e[4*j+1]=1;e[4*j+2]=1;e[4*j+3]=0;e[4*j+4]=1;}
if(x=='e'){e[4*j+1]=1;e[4*j+2]=1;e[4*j+3]=1;e[4*j+4]=0;}
if(x=='f'){e[4*j+1]=1;e[4*j+2]=1;e[4*j+3]=1;e[4*j+4]=1;}
}
void six_to_TWO()
{
for(j=0;j<8;j++)
{
pd(s[j]);
}
}
int main()
{
scanf("%d",&T);
for(i=1;i<=T;i++)
{
scanf("%s",s);
scanf("%d %d",&m,&k);
six_to_TWO();
memset(fugai,0,sizeof(fugai));
for(int l=m;l>=1;l--)
{
if(k==0)break;
fugai[l]=k%2;
k/=2;
}
for(int l=1;l<=m;l++)
{
e[l]=fugai[l];
}
for(int l=1;l<=32;l+=4)
{
ppd(l);
}
printf("\n");
}
}