UVA - 227 Puzzle

#include <iostream>
#include <string>
#include <cstdio>
using namespace std;
int main()
{
    //freopen("input.txt","r",stdin);
    int T=0,i,j,m,n;
    while(1)
    {
        char a[5][5];
        gets(a[0]);
        if(a[0][0]=='Z')
            break;
        for(i=1;i<5;i++)
            gets(a[i]);
        for(i=0;i<5;i++)
            for(j=0;j<5;j++)
                if(a[i][j]==' ')
                {
                    m=i;
                    n=j;
                }
        int flag=0;
        char c;
        while(c=getchar())
        {
            if(c=='0')
            {
                getchar();
                break;
            }
            switch(c)
            {
            case 'A':
                {
                    if(m>0)
                    {
                        a[m][n]=a[m-1][n];
                        a[m-1][n]=' ';
                        m--;
                    }
                    else
                        flag=1;
                    break;
                }
            case 'B':
                {
                    if(m<4)
                    {
                        a[m][n]=a[m+1][n];
                        a[m+1][n]=' ';
                        m++;
                    }
                    else
                        flag=1;
                    break;
                }
            case 'L':
                {
                    if(n>0)
                    {
                        a[m][n]=a[m][n-1];
                        a[m][n-1]=' ';
                        n--;
                    }
                    else
                        flag=1;
                    break;
                }
            case 'R':
                {
                    if(n<4)
                    {
                        a[m][n]=a[m][n+1];
                        a[m][n+1]=' ';
                        n++;
                    }
                    else
                        flag=1;
                    break;
                }
            }
            if(flag)
            {
                while(getchar()!='0');
                getchar();
                break;
            }
        }
        if(++T!=1)
            cout<<endl;
        cout<<"Puzzle #"<<T<<':'<<endl;
        if(!flag)
        {
            for(i=0;i<5;i++)
            {
                for(j=0;j<5;j++)
                {
                    if(j)
                        cout<<' ';
                    cout<<a[i][j];
                }
                cout<<endl;
            }
        }
        else
            cout<<"This puzzle has no final configuration."<<endl;
    }
    return 0;
}

vue-puzzle是一个Vue.js的人机验证组件,它可以用于在前端实现拼图验证码功能。 该组件可以用于替代第三方SDK的拼图验证,避免了引入SDK和后台配合的麻烦。你只需要通过npm安装vue-puzzle-vcode即可开始使用。 使用vue-puzzle-vcode时,你需要在代码中引入Vcode组件并使用它来展示验证模态框。你可以设置show属性来控制模态框的显示与隐藏,通过onSuccess事件来处理用户通过验证后的逻辑,通过onClose事件来处理关闭模态框的逻辑。 在示例中,当用户点击登录按钮时,会触发onSubmit方法,使验证码模态框显示出来。当用户通过验证后,会触发onSuccess方法,你需要在该方法中手动隐藏模态框。当用户点击遮罩层时,会触发onClose方法,你需要在该方法中关闭模态框。 除了以上提到的参数外,vue-puzzle还提供了其他可配置的参数,你可以根据需求进行设置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Vue拼图验证组件使用教程](https://blog.csdn.net/weixin_40121676/article/details/102895804)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [vue 使用vue-puzzle-vcode拼图验证纯前端实现](https://blog.csdn.net/qq_37816525/article/details/102560656)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值