mooc的洗牌机的题目Shuffling Machine

include <stdio.h>

void shuffling(int *a,int *shuf,int *tmp);
void print_card(int *a);
int main(){
  int i,count;
  int result_card[54];
  int input[54],tmp[54];
  for(i=0;i<54;i++){
    result_card[i]=i+1;
  }

  scanf("%d",&count);
  for(i=0;i<54;i++){
    scanf("%d",&input[i]);
  }


    for(i=0;i<count;i++){
    shuffling(result_card,input,tmp);
  }
  print_card(result_card);
  return 0;
}

void print_card(int *a){
  int i=0;
  for(i=0;i<54;i++){
    if(a[i]<=13){
      printf("S%d",a[i]);
    }
    else if(a[i]<=26){
      printf("H%d",a[i]-13);
    }
    else if(a[i]<=39){
      printf("C%d",a[i]-26);
    }
    else if(a[i]<=52){
      printf("D%d",a[i]-39);
    }
    else {
      printf("J%d",a[i]-52);
    }
  printf(" ");
  }
  printf("\b");
}

void shuffling(int *a,int *shuf,int *tmp){
  int loc=0,i=0;
  for(i=0;i<54;i++){
  loc=shuf[i];
  tmp[loc-1]=a[i];
  }
  for(i=0;i<54;i++){
  a[i]=tmp[i];
  }

}

我也不知道为什么提交总是说答案错误,给的样例是对的

http://blog.csdn.net/staibin/article/details/21029465