免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
设为首页收藏本站开启辅助访问站点地图

美化代码新人必看赚取圈币

返回列表 发帖
查看: 9079|回复: 23 收起左侧
开启左侧收起左侧开启左侧
上一主题 下一主题 打印

[修改模板] 主题列表页 发帖图标旁 加 【本版搜索】代码   [复制链接]

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
111.jpg 登陆后可看大图

打开:forumdisplay.htm

找到:
  1. {lang send_posts}</a></span>
复制代码


下面添加:
本帖隐藏的内容需要回复才可以浏览

最近看过此主题的圈友

红颜朝歌
访问时间:2024-08-14 21:33
米酷
访问时间:2023-05-15 20:56
伊风来
访问时间:2022-10-19 19:05
桑小玉
访问时间:2021-10-27 22:44
九七
访问时间:2021-08-05 12:52
东窗凝月
访问时间:2020-07-18 18:12
王现鹏
访问时间:2020-02-13 18:42
爱谁谁
访问时间:2019-12-22 21:11
源分
访问时间:2019-12-01 16:21

点评
B Color Link Smilies

您还可以输入:个字符
X

 X

今天你帮助了别人,明天别人帮助你.
他[她]看完这篇文章说:
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享

获得 大恶魔卡 一张

卡片说明:线条 被钱袋砸中进医院,看病花了 6 圈币

卡片效果:-6

点评
B Color Link Smilies

您还可以输入:个字符
X

 X

回复 1# oocn


    #include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
int T,ans=20,flag;
int xx[9]={0,-2,-2,-1,-1,1,1,2,2};
int yy[9]={0,-1,1,-2,2,2,-2,1,-1};
int s[10][7],get[10][10];
int map[10][10];
char si;
int Judge()
{
    int ret=0;
    for(int i=1;i<=5;i++)
    {
        for(int j=1;j<=5;j++)
        {
            if(s[j]!=map[j])
            {
                ret++;
            }
        }
    }
    return ret;
}
void dfs(int now,int x,int y,int sum)
{
    if(flag!=0)
    {
        return;
    }
    int c=Judge();
    if(now==sum)
    {
        if(c==0)
        {
            flag=1;
            ans=sum;
        }
    }
    if(now-1+c>sum)
    {
        return;
    }
    for(int i=1;i<=8;i++)
    {
        int nx=x+xx;
        int ny=y+yy;
        if(nx>0 && nx<=5 && ny>0 && ny<=5)
        {
            swap(s[x][y],s[nx][ny]);
            dfs(now+1,nx,ny,sum);
            swap(s[x][y],s[nx][ny]);
        }
    }
}
int main()
{
    scanf("%d",&T);
    map[1][1]=1;
    map[1][2]=1;
    map[1][3]=1;
    map[1][4]=1;
    map[1][5]=1;
    map[2][1]=0;
    map[2][2]=1;
    map[2][3]=1;
    map[2][4]=1;
    map[2][5]=1;
    map[3][1]=0;
    map[3][2]=0;
    map[3][3]=2;
    map[3][4]=1;
    map[3][5]=1;
    map[4][1]=0;
    map[4][2]=0;
    map[4][3]=0;
    map[4][4]=0;
    map[4][5]=1;
    map[5][1]=0;
    map[5][2]=0;
    map[5][3]=0;
    map[5][4]=0;
    map[5][5]=0;
    while(T--)
    {
        int x,y;
        for(int i=1;i<=5;i++)
        {
            for(int j=1;j<=5;j++)
            {
                cin>>si;
                if(si=='*')
                {
                    x=i;
                    y=j;
                    get[j]=2;
                }   
                else
                {
                    get[j]=si-'0';
                }
            }
        }
        for(int k=0;k<=20;k++)
        {
            flag=0;
            ans=20;
            for(int i=1;i<=5;i++)
            {
                for(int j=1;j<=5;j++)
                {
                    s[j]=get[j];
                }
            }
            dfs(0,x,y,k);
            if(ans==k)
            {
                break;
            }
        }
        if(ans<=15)
        {
            printf("%d\n",ans);
        }
        else
        {
            printf("-1\n");
        }
    }
    return 0;
}
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

支持您的分享
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

他[她]看完这篇文章说:
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

下一页 »
返回列表 发帖
快速
返回顶部
返回首页