Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

谁给几个数据阿,怎么老是WA呢

Posted by shi_mj at 2007-08-20 16:55:59 on Problem 1835
我的方法是确定当前人的头顶和面前得方向来做的,可是还是WA啊,还有什么东西要考虑呢 


#include<stdio.h>
long n,x,y,z,c,q,t;
     char s[10];
void p(long a, long b)
{
  switch (a)
    {
      case 0: 
              {
                x=x+b;
                break;
              }
      case 1: 
              {
                y=y+b;
                break;
              }
      case 2: 
              {
                z=z+b;
                break;
              }
      case 3: 
              {
                x=x-b;
                break;
              }
      case 4: 
               {
                 y=y-b;
                 break;
               }
      case 5: 
               {
                 z=z-b;
                 break;
               }
    } 
}
void pd(char ss[10], long qq)
{
  if (ss[0]=='r')
    {
      switch(t)
        {
           case 0:  
                    {
                     switch (c)
                       {
                         case 1: { c=2; p(c,qq); break;}  
                         case 2: { c=4; p(c,qq); break;}
                         case 4: { c=5; p(c,qq); break;}
                         case 5: { c=1; p(c,qq); break;}
                       }
                     break;
                    }
           case 1: 
                    {
                     switch (c)
                       {
                         case 0: { c=5; p(c,qq); break;}  
                         case 2: { c=0; p(c,qq); break;}
                         case 3: { c=2; p(c,qq); break;}
                         case 5: { c=3; p(c,qq); break;}
                       }
                      break;
                    }
           case 2:  
                    {
                     switch (c)
                       {
                         case 0: { c=1; p(c,qq); break;}
                         case 1: { c=3; p(c,qq); break;}  
                         case 3: { c=4; p(c,qq); break;}
                         case 4: { c=0; p(c,qq); break;}
                       }
                      break;
                    }
           case 3: 
                    {
                     switch (c)
                       {
                         case 1: { c=5; p(c,qq); break;}
                         case 2: { c=1; p(c,qq); break;}  
                         case 4: { c=2; p(c,qq); break;}
                         case 5: { c=4; p(c,qq); break;}
                       }
                      break;
                    }
           case 4: 
                    {
                       switch (c)
                         {
                           case 0: { c=2; p(c,qq); break;}
                           case 2: { c=3; p(c,qq); break;}  
                           case 3: { c=5; p(c,qq); break;}
                           case 5: { c=0; p(c,qq); break;}
                         }
                       break;
                    }
           case 5: 
                    {
                      switch (c)
                        {
                          case 0: { c=4; p(c,qq); break;}
                          case 1: { c=0; p(c,qq); break;}  
                          case 3: { c=1; p(c,qq); break;}
                          case 4: { c=3; p(c,qq); break;}
                        }
                      break;
                    }
        }
    }
  if (ss[0]=='l')
    {
      switch(t)
        {
           case 0:
                  {
                    switch (c)
                      {
                        case 1: { c=5; p(c,qq); break;}  
                        case 2: { c=1; p(c,qq); break;}
                        case 4: { c=2; p(c,qq); break;}
                        case 5: { c=4; p(c,qq); break;}
                      }
                      break;
                  }
           case 1:
                  {
                    switch (c)
                      {
                        case 0: { c=2; p(c,qq); break;}  
                        case 2: { c=3; p(c,qq); break;}
                        case 3: { c=5; p(c,qq); break;}
                        case 5: { c=0; p(c,qq); break;}
                      }
                    break;
                  }
               
           case 2:
                  { 
                    switch (c)
                      {
                        case 0: { c=4; p(c,qq); break;}
                        case 1: { c=0; p(c,qq); break;}  
                        case 3: { c=1; p(c,qq); break;}
                        case 4: { c=3; p(c,qq); break;}
                      }
                    break;
                  }
           case 3: 
                   {
                      switch (c)
                        {
                          case 1: { c=2; p(c,qq); break;}
                          case 2: { c=4; p(c,qq); break;}  
                          case 4: { c=5; p(c,qq); break;}
                          case 5: { c=1; p(c,qq); break;}
                        }
                      break;
                   }
           case 4: 
                   {
                      switch (c)
                        {
                           case 0: { c=5; p(c,qq); break;}
                           case 2: { c=0; p(c,qq); break;}  
                           case 3: { c=2; p(c,qq); break;}
                           case 5: { c=3; p(c,qq); break;}
                        }
                      break;
                   }
           case 5:
                  { 
                    switch (c)
                      {
                        case 0: { c=1; p(c,qq); break;}
                        case 1: { c=3; p(c,qq); break;}  
                        case 3: { c=4; p(c,qq); break;}
                        case 4: { c=0; p(c,qq); break;}
                      }
                    break;
                  }
        }
    }
  if (ss[0]=='f')
    {
      p(c,qq);
    }  
  if (ss[0]=='b')
    {
      switch(c)
        {
          case 0: { c=3; p(c,qq); break;}  
          case 1: { c=4; p(c,qq); break;}  
          case 2: { c=5; p(c,qq); break;}
          case 3: { c=0; p(c,qq); break;}  
          case 4: { c=1; p(c,qq); break;}
          case 5: { c=2; p(c,qq); break;}
        }
    }
  if (ss[0]=='u')
    {
      switch(t)
        {
           case 0:
                  {
                    switch (c)
                      {
                        case 1: { c=0; t=4; p(c,qq); break;}  
                        case 2: { c=0; t=5; p(c,qq); break;}
                        case 4: { c=0; t=1; p(c,qq); break;}
                        case 5: { c=0; t=2; p(c,qq); break;}
                      }
                    break;
                  }
           case 1:
                  {
                    switch (c)
                      {
                        case 0: { c=1; t=3; p(c,qq); break;}  
                        case 2: { c=1; t=5; p(c,qq); break;}
                        case 3: { c=1; t=0; p(c,qq); break;}
                        case 5: { c=1; t=2; p(c,qq); break;}
                      }
                    break;
                  }
               
           case 2: 
                  {
                    switch (c)
                      {
                        case 0: { c=2; t=3; p(c,qq); break;}
                        case 1: { c=2; t=4; p(c,qq); break;}  
                        case 3: { c=2; t=0; p(c,qq); break;}
                        case 4: { c=2; t=1; p(c,qq); break;}
                      }
                    break;
                  }
           case 3: 
                  {
                    switch (c)
                      {
                        case 1: { c=3; t=4; p(c,qq); break;}
                        case 2: { c=3; t=5; p(c,qq); break;}  
                        case 4: { c=3; t=1; p(c,qq); break;}
                        case 5: { c=3; t=2; p(c,qq); break;}
                      }
                    break;
                  }
           case 4: 
                   {
                      switch (c)
                        {
                          case 0: { c=4; t=3; p(c,qq); break;}
                          case 2: { c=4; t=5; p(c,qq); break;}  
                          case 3: { c=4; t=0; p(c,qq); break;}
                          case 5: { c=4; t=2; p(c,qq); break;}
                       }
                    break;
                   }
           case 5:
                  { 
                    switch (c)
                      {
                        case 0: { c=5; t=3; p(c,qq); break;}
                        case 1: { c=5; t=4; p(c,qq); break;}  
                        case 3: { c=5; t=0; p(c,qq); break;}
                        case 4: { c=5; t=1; p(c,qq); break;}
                      }
                    break;
                  }
        }
    }
  if (ss[0]=='d')
    {
      switch(t)
        {
           case 0:
                  {
                    switch (c)
                      {
                        case 1: { c=3; t=1; p(c,qq); break;}  
                        case 2: { c=3; t=2; p(c,qq); break;}
                        case 4: { c=3; t=4; p(c,qq); break;}
                        case 5: { c=3; t=5; p(c,qq); break;}
                      }
                    break;
                 }
           case 1:
                  {
                    switch (c)
                      {
                        case 0: { c=4; t=0; p(c,qq); break;}  
                        case 2: { c=4; t=2; p(c,qq); break;}
                        case 3: { c=4; t=3; p(c,qq); break;}
                        case 5: { c=4; t=5; p(c,qq); break;}
                      }
                    break;
                 }
               
           case 2: 
                  {
                    switch (c)
                      {
                        case 0: { c=5; t=0; p(c,qq); break;}
                        case 1: { c=5; t=1; p(c,qq); break;}  
                        case 3: { c=5; t=3; p(c,qq); break;}
                        case 4: { c=5; t=4; p(c,qq); break;}
                      }
                    break;
                  }
           case 3: 
                  {
                    switch (c)
                      {
                        case 1: { c=0; t=1; p(c,qq); break;}
                        case 2: { c=0; t=2; p(c,qq); break;}  
                        case 4: { c=0; t=4; p(c,qq); break;}
                        case 5: { c=0; t=5; p(c,qq); break;}
                      }
                    break;
                  }
           case 4: 
                  {
                    switch (c)
                      {
                        case 0: { c=1; t=0; p(c,qq); break;}
                        case 2: { c=1; t=2; p(c,qq); break;}  
                        case 3: { c=1; t=3; p(c,qq); break;}
                        case 5: { c=1; t=5; p(c,qq); break;}
                      }
                    break;
                  }
           case 5: 
                  {
                    switch (c)
                      {
                        case 0: { c=5; t=0; p(c,qq); break;}
                        case 1: { c=5; t=1; p(c,qq); break;}  
                        case 3: { c=5; t=3; p(c,qq); break;}
                        case 4: { c=5; t=4; p(c,qq); break;}
                      }
                    break;
                  }
        }
    }
}
void work()
{
  long i;
  x=0,y=0,z=0,c=0,t=2;;
  scanf("%ld",&n);
  for (i=1;i<=n;i++) 
    {
      scanf("%s %ld",&s,&q);
      pd(s,q);
    }
}
main()
{
  long m,i;
  scanf("%ld",&m);
  for (i=1;i<=m;i++)
    {
      work();
      printf("%ld %ld %ld %ld\n",x,y,z,c);
    }
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator