ZOJ3938——模擬水題

第一行照例留給本鴿子精咕咕咕。
第二行高亮——一定要細心!!!!!!(來自一個寫錯一個數字死活A不了的人)

題意——略。

#include <cstdio>
#include <string>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <queue>
using namespace std;

int a[5][5];
int p[5];
int s[5];

void stage1(int x)
{
    if(x==1)
    {
        p[1] = 2;
        s[1] = a[0][2];
        printf("%d %d\n",2,a[0][2]);
    }
    else if(x==2)
    {
        p[1] = 2;
        s[1] = a[0][2];
        printf("%d %d\n",2,a[0][2]);
    }
    else if(x==3)
    {
        p[1] = 3;
        s[1] = a[0][3];
        printf("%d %d\n",3,a[0][3]);
    }
    else
    {
        p[1] = 4;
        s[1] = a[0][4];
        printf("%d %d\n",4,s[1]);
    }
}//√
void stage2(int x)
{
    if(x==1)
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[1][i]==4)
            {
                p[2] = i;
                s[2] = 4;
                printf("%d %d\n",i,4);
                break;
            }
        }
    }
    else if(x==2)
    {
        p[2] = p[1];
        s[2] = a[1][p[2]];
        printf("%d %d\n",p[1],s[2]);
    }
    else if(x==3)
    {
        printf("%d %d\n",1,a[1][1]);
        p[2] = 1;
        s[2] = a[1][1];
    }
    else
    {
        printf("%d %d\n",p[1],a[1][p[1]]);
        p[2] = p[1];
        s[2] = a[1][p[1]];
    }
}
void stage3(int x)
{
    if(x==1)
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[2][i]==s[2])
            {
                s[3] = s[2];
                p[3] = i;
                printf("%d %d\n",p[3],s[3]);
                break;
            }
        }
    }
    else if(x==2)
    {
        for(int i = 1; i <= 4; ++i)
        {
            if(a[2][i]==s[1])
            {
                s[3] = s[1];
                p[3] = i;
                printf("%d %d\n",p[3],s[3]);
                break;
            }
        }
    }
    else if(x==3)
    {
        printf("%d %d\n",3,a[2][3]);
        p[3] = 3;
        s[3] = a[2][3];
    }
    else
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[2][i]==4)
            {
                s[3] = 4;
                p[3] = i;
                printf("%d %d\n",p[3],s[3]);
                break;
            }
        }
    }
}
void stage4(int x)
{
    if(x==1)
    {
        p[4] = p[1];
        s[4] = a[3][p[1]];
        printf("%d %d\n",p[4],s[4]);
    }
    else if(x==2)
    {
        printf("%d %d\n",1,a[3][1]);
        p[4] = 1;
        s[4] = a[3][1];
    }
    else if(x==3)
    {
        p[4] = p[2];
        s[4] = a[3][p[2]];
        printf("%d %d\n",p[4],s[4]);
    }
    else
    {
        p[4] = p[2];
        s[4] = a[3][p[2]];
        printf("%d %d\n",p[4],s[4]);
    }
}
void stage5(int x)
{
    if(x==1)
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[4][i]==s[1])
            {
                p[5] = i;
                s[5] = s[1];
                printf("%d %d\n",i,s[1]);
                break;
            }
        }
    }
    else if(x==2)
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[4][i]==s[2])
            {
                p[5] = i;
                s[5] = s[2];
                printf("%d %d\n",i,s[2]);
                break;
            }
        }
    }
    else if(x==3)
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[4][i]==s[4])
            {
                p[5] = i;
                s[5] = s[4];
                printf("%d %d\n",i,s[4]);
                break;
            }
        }
    }
    else
    {
        for(int i=1; i<=4; ++i)
        {
            if(a[4][i]==s[3])
            {
                p[5] = i;
                s[5] = s[3];
                printf("%d %d\n",i,s[3]);
                break;
            }
        }
    }
}
int main()
{
    int t;
    scanf("%d",&t);
        for(int i=1; i<=t; ++i)
        {
            for(int k=0; k<5; ++k)
            {
                scanf("%d%d%d%d%d",&a[k][0],&a[k][1],&a[k][2],&a[k][3],&a[k][4]);
            }
            for(int k=0; k<5; ++k)
            {
                if(k==0)
                    stage1(a[k][0]);
                else if(k==1)
                    stage2(a[k][0]);
                else if(k==2)
                    stage3(a[k][0]);
                else if(k==3)
                    stage4(a[k][0]);
                else
                    stage5(a[k][0]);
            }
        }
    return 0;
}
發佈了41 篇原創文章 · 獲贊 10 · 訪問量 3494
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章