2009-04-04 14:29:28來源不明

反轉表

/*******************************************/

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
main()
{
 char input[1000];
 int a,b,c,temp,time,temp1,temp2;
 while(gets(input))
 {
  int output[1000]={0},anstemp[1000]={0};
  temp=0;temp1=0;temp2=0;time=0;
  if(input[0]=='-') break;
  for(a=0;a<=strlen(input);a++)
   {
    if(input[a]<=57&&input[a]>=48)
     temp=temp*10+input[a]-48;
    else
     {anstemp[time]=temp;temp=0;time++;}
     output[a]=-1;
   }
  for(a=0;a<time;a++)
   {
   temp1=anstemp[a]+1;temp2=0;
     for(b=0;b<time;b++)
      {
       if(output[b]==-1)
        temp2++;
       if(temp1==temp2)
        {
         output[b]=a+1;
         temp2=0;
         break;
        }
      }
   }
   for(a=0;a<time;a++)
    printf("%d ",output[a]);
    printf("\n");
  
 }
 return 0;     
}