Problem: http://www.spoj.com/problems/HS12HDPW/
Code:
# include<stdio.h>
int main(void) {
char tuple[6],str[64];
int t,n,i,k,mask1,mask2,a,b,queue[100],q_rear=0;
scanf("%d",&t);
while(t--) {
scanf("%d",&n);
for(k=0;k<n;k++) {
a=b=0;
scanf("%s",tuple);
for(i=0;i<6;i++) {
mask1=1<<i;
mask2=1<<((i+3)%6);
a=a|(tuple[i]&mask1);
b=b|(tuple[i]&mask2);
}
queue[q_rear++]=a;
queue[q_rear++]=b;
}
scanf("%d",str);
for(i=0;i<q_rear;i++) putchar(str[queue[i]]);
putchar('\n');
}
}
The value of variable a seems to be correct, but b gives wrong result..
Help me pls