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

本人刚开始敲ACM时的代码,当时居然能写800+行,而且只用了1小时1A过的,笑尿=。=

Posted by 1403mashaonan at 2015-02-23 21:08:50 on Problem 1835
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
char s[10];
int main()
{
    int m,n,i,j,x,y,z,p,q,a;
    scanf("%d",&m);
    for(i=0; i<m; i++)
    {
        p=0;
        q=2;
        x=0;
        y=0;
        z=0;
        scanf("%d",&n);
        for(j=0; j<n; j++)
        {
            scanf("%s",s);
            scanf("%d",&a);
            if(strcmp(s,"forward")==0)
            {
                if(p==0)
                {
                    x+=a;
                    continue;
                }
                if(p==1)
                {
                    y+=a;
                    continue;
                }
                if(p==2)
                {
                    z+=a;
                    continue;
                }
                if(p==3)
                {
                    x-=a;
                    continue;
                }
                if(p==4)
                {
                    y-=a;
                    continue;
                }
                if(p==5)
                {
                    z-=a;
                    continue;
                }
            }
            if(strcmp(s,"back")==0)
            {
                if(p==0)
                {
                    p=3;
                    x-=a;
                    continue;
                }
                if(p==1)
                {
                    p=4;
                    y-=a;
                    continue;
                }
                if(p==2)
                {
                    p=5;
                    z-=a;
                    continue;
                }
                if(p==3)
                {
                    p=0;
                    x+=a;
                    continue;
                }
                if(p==4)
                {
                    p=1;
                    y+=a;
                    continue;
                }
                if(p==5)
                {
                    p=2;
                    z+=a;
                    continue;
                }
            }
            if(strcmp(s,"left")==0)
            {
                if(p==0)
                {
                    if(q==1)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                }
                if(p==1)
                {
                    if(q==0)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                }
                if(p==2)
                {
                    if(q==0)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                }
                if(p==3)
                {
                    if(q==1)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                }
                if(p==4)
                {
                    if(q==0)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                }
                if(p==5)
                {
                    if(q==0)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                }
            }
            if(strcmp(s,"right")==0)
            {
                if(p==0)
                {
                    if(q==1)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                }
                if(p==1)
                {
                    if(q==0)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                }
                if(p==2)
                {
                    if(q==0)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                }
                if(p==3)
                {
                    if(q==1)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                }
                if(p==4)
                {
                    if(q==0)
                    {
                        p=5;
                        z-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=2;
                        z+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                }
                if(p==5)
                {
                    if(q==0)
                    {
                        p=1;
                        y+=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=3;
                        x-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=4;
                        y-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=0;
                        x+=a;
                        continue;
                    }
                }
            }
            if(strcmp(s,"up")==0)
            {
                if(p==0)
                {
                    if(q==1)
                    {
                        p=1;
                        q=3;
                        y+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=2;
                        q=3;
                        z+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=4;
                        q=3;
                        y-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=5;
                        q=3;
                        z-=a;
                        continue;
                    }
                }
                if(p==1)
                {
                    if(q==0)
                    {
                        p=0;
                        q=4;
                        x+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=2;
                        q=4;
                        z+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=3;
                        q=4;
                        x-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=5;
                        q=4;
                        z-=a;
                        continue;
                    }
                }
                if(p==2)
                {
                    if(q==0)
                    {
                        p=0;
                        q=5;
                        x+=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=1;
                        q=5;
                        y+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=3;
                        q=5;
                        x-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=4;
                        q=5;
                        y-=a;
                        continue;
                    }
                }
                if(p==3)
                {
                    if(q==1)
                    {
                        p=1;
                        q=0;
                        y+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=2;
                        q=0;
                        z+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=4;
                        q=0;
                        y-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=5;
                        q=0;
                        z-=a;
                        continue;
                    }
                }
                if(p==4)
                {
                    if(q==0)
                    {
                        p=0;
                        q=1;
                        x+=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=2;
                        q=1;
                        z+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=3;
                        q=1;
                        x-=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=5;
                        q=1;
                        z-=a;
                        continue;
                    }
                }
                if(p==5)
                {
                    if(q==0)
                    {
                        p=0;
                        q=2;
                        x+=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=1;
                        q=2;
                        y+=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=3;
                        q=2;
                        x-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=4;
                        q=2;
                        y-=a;
                        continue;
                    }
                }
            }
            if(strcmp(s,"down")==0)
            {
                if(p==0)
                {
                    if(q==1)
                    {
                        p=4;
                        q=0;
                        y-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=5;
                        q=0;
                        z-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=1;
                        q=0;
                        y+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=2;
                        q=0;
                        z+=a;
                        continue;
                    }
                }
                if(p==1)
                {
                    if(q==0)
                    {
                        p=3;
                        q=1;
                        x-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=5;
                        q=1;
                        z-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=0;
                        q=1;
                        x+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=2;
                        q=1;
                        z+=a;
                        continue;
                    }
                }
                if(p==2)
                {
                    if(q==0)
                    {
                        p=3;
                        q=2;
                        x-=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=4;
                        q=2;
                        y-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=0;
                        q=2;
                        x+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=1;
                        q=2;
                        y+=a;
                        continue;
                    }
                }
                if(p==3)
                {
                    if(q==1)
                    {
                        p=4;
                        q=3;
                        y-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=5;
                        q=3;
                        z-=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=1;
                        q=3;
                        y+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=2;
                        q=3;
                        z+=a;
                        continue;
                    }
                }
                if(p==4)
                {
                    if(q==0)
                    {
                        p=3;
                        q=4;
                        x-=a;
                        continue;
                    }
                    if(q==2)
                    {
                        p=5;
                        q=4;
                        z-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=0;
                        q=4;
                        x+=a;
                        continue;
                    }
                    if(q==5)
                    {
                        p=2;
                        q=4;
                        z+=a;
                        continue;
                    }
                }
                if(p==5)
                {
                    if(q==0)
                    {
                        p=3;
                        q=5;
                        x-=a;
                        continue;
                    }
                    if(q==1)
                    {
                        p=4;
                        q=5;
                        y-=a;
                        continue;
                    }
                    if(q==3)
                    {
                        p=0;
                        q=5;
                        x+=a;
                        continue;
                    }
                    if(q==4)
                    {
                        p=1;
                        q=5;
                        y+=a;
                        continue;
                    }
                }
            }
        }
        printf("%d %d %d %d\n",x,y,z,p);
    }
    return 0;
}

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