周游列国

         周游列国

                        Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu

Description

大家都知道孔子吧,春秋战国时候的一个老头儿。当时出国还不用护照,所以他经常赶着牛车带着弟子们周游列国。可是这路也并不是那么好走的,当遇到高山时孔子他们就得绕着走了,你得考虑他牛车的实力能不能hold住啊。当然,孔子是个很聪明的人,每次出门前都会四处打听,然后制定出一个赶车路线,然后按照路线去走。但是,由于很多路没有亲自走过他也不确定按这个路线到底能不能周游列国?然而,你有当时的地图,希望你编程判断一下按照孔子的行车路线能不能周游列国。

Input

第一行是行车路线即一个字符串只包含L,R,U和D分别代表左走,右走,上走,下走。接下来以上是两个整数H和W,0 < H,W < 20, 代表地图的高和宽。然后是H*W的地图。S代表孔子的起点。标有1~7的区域分别代表7个国家的领土,#代表高山。

Output

如果孔子能周游列国即经过这7个国家则输出Yes,否则输出No。

Sample Input

RDDDDLRRRRUU
5 5
S1111
22#22
33#44
56#77
56777

Sample Output

Yes

如果遇到#应直接退回到前一状态。最后判断当走完设计好的路线后,这7个国家是否都已经走过。
    #include<stdio.h>
#include<string.h>
int main()
{
    int n, m ,i, j, cnt, x, y, len;
    char s[100000], mapp[100][100];
    int vis[10];
    while(~scanf("%s", s))
    {
        cnt =0;
        x = y = 0;//用x,y标记S的位置
        len = 0;
        memset(mapp, 0, sizeof(mapp));
        memset(vis, 0, sizeof(vis));
        scanf("%d%d%*c", &n, &m);

        for(i=1; i<=n; i++)
            for(j=1; j<=m; j++)
            {
                scanf("%c", &mapp[i][j]);
                if(j==m)
                    scanf("%*c");
                if(mapp[i][j]==‘S‘)
                {
                    x = i;
                    y = j;
                }
            }
        len = strlen(s);
        for(i=0; i<len; i++)
        {
            if(s[i]==‘R‘)
            {
                y = y+1;
                if(mapp[x][y]==‘#‘)
                    y = y-1;

                if(mapp[x][y]>=‘0‘ && mapp[x][y]<=‘7‘)
                    vis[mapp[x][y]-‘0‘] = 1;
            }
            if(s[i]==‘L‘)
            {
                y = y-1;
                if(mapp[x][y]==‘#‘)
                    y = y+1;

                if(mapp[x][y]>=‘0‘ && mapp[x][y]<=‘7‘)
                    vis[mapp[x][y]-‘0‘] = 1;
            }
            if(s[i]==‘U‘)
            {
                x = x-1;
                if(mapp[x][y]==‘#‘)
                    x = x+1;

                if(mapp[x][y]>=‘0‘ && mapp[x][y]<=‘7‘)
                    vis[mapp[x][y]-‘0‘] = 1;
            }
            if(s[i]==‘D‘)
            {
                x = x+1;
                if(mapp[x][y]==‘#‘)
                    x = x-1;

                if(mapp[x][y]>=‘0‘ && mapp[x][y]<=‘7‘)
                    vis[mapp[x][y]-‘0‘] = 1;
            }
        }
        for(j=0; j<10; j++)
            {
                if(vis[j]!=0)
                    cnt++;
            }
        if(cnt==7) printf("Yes\n");
        else printf("No\n");
    }
    return 0;
}
时间: 2024-10-01 04:39:12

周游列国的相关文章

SDUT OJ 1598 周游列国

周游列国 Time Limit: 1000ms   Memory limit: 32768K  有疑问?点这里^_^ 题目描述 大家都知道孔子吧,春秋战国时候的一个老头儿.当时出国还不用护照,所以他经常赶着牛车带着弟子们周游列国.可是这路也并不是那么好走的,当遇到高山时孔子他们就得绕着走了,你得考虑他牛车的实力能不能hold住啊.当然,孔子是个很聪明的人,每次出门前都会四处打听,然后制定出一个赶车路线,然后按照路线去走.但是,由于很多路没有亲自走过他也不确定按这个路线到底能不能周游列国?然而,你

周游列国(简单枚举)

周游列国 Time Limit: 1000ms   Memory limit: 32768K  有疑问?点这里^_^ 题目描述 大家都知道孔子吧,春秋战国时候的一个老头儿.当时出国还不用护照,所以他经常赶着牛车带着弟子们周游列国.可是这路也并不是那么好走的,当遇到高山时孔子他们就得绕着走了,你得考虑他牛车的实力能不能hold住啊.当然,孔子是个很聪明的人,每次出门前都会四处打听,然后制定出一个赶车路线,然后按照路线去走.但是,由于很多路没有亲自走过他也不确定按这个路线到底能不能周游列国?然而,你

[从头学数学] 第184节 周游列国拜诸侯(中)

剧情提要: [机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第二转的修炼. 这次要研究的是[例题] 正剧开始: (续前节) 星历2016年04月19日 09:02:47, 银河系厄尔斯星球中华帝国江南行省. [工程师阿伟]正在和[机器小伟]一起研究[例题]. <span style="font-size:18px;">#例1 def prime(x): if x < 2: return False; for i in range(2, math.ceil(x*

[从头学数学] 第183节 周游列国拜诸侯(上)

剧情提要: [机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第二转的修炼. 这次要研究的是[例题] 正剧开始: 星历2016年04月18日 08:34:09, 银河系厄尔斯星球中华帝国江南行省. [工程师阿伟]正在和[机器小伟]一起研究[例题]. [人叫板老师]的功法中到底有多少例题,这个问题当年[工程师阿伟] 想弄明白,可惜后来还是没有完成,不能不说是一个遗憾. 所以这次[机器小伟]一定要帮[工程师阿伟]完成这个心愿. 经过一番统计,得到了以下的结论: "集函用,体面线圆: 算统率,三

如果回到十八岁,我要对自己说......

I like to joke that I am who I am today because I did everything wrong in my 20's. I've always been fearless, and it often got me in trouble. I wasn't afraid to start a business, borrow a bunch of money, or quit a well-paying job to travel the world.

是不是更应该勇敢一点

二十二岁的S姑娘,在小城市有着一份不错的工作,却为婚嫁之事所烦恼,不出众的外貌和略有些汉子的性格让她的桃花迟迟不开.她打算出国或者换工作到大城市,但迟迟无法下定决心,一方面现在的工作是高薪国企,一方面惧怕出国的复杂流程和大城市的激烈竞争,就这么纠结了六年,到了二十八岁,由于社交圈子的狭隘,她还是那个长相平凡心思粗放的她,只是成了剩女.工作上由于性别和单位性质的限制,虽然已经十分刻苦,但仍然是普通职员.她的高学历和单身身份让她在小城市备受侧目,于是她狠下心来,跳槽到了上海. 新公司给了她一个职位,

BEST PARTNER(转)

正文:(一)项目确立 一年前,CSDN的外包频道,一家贸易公司寻求开发业务系统.我注意到这家公司和我正好在一个城市,索性就跟了一帖,写了点简要的个人开发情况,当然最重要的是附上了自己的手机号码(当时CSDN外包频道还不限制这个信息的).第二天就接到那家公司总经理的电话,这让我多少有点意外,电话中,双方客套两句后,约定好周末面谈. 和以往面试一样,我带上个笔记本(上面有以往开发的项目演示版)按照约定好的时间,准时去洽谈.地点是在对方的办公室,一进会客室,给我第一感觉整齐.清新.优雅.绿色:窗外则是

技术问答站点与论坛为什么半死不活

前段时间写了本书,<深入浅出 Qt on Android >.在此过程中常常泡在 Qt 相关的各个论坛与博客,比方 qt-project .KDAB .CSDN移动开发 Qt 版 . qtcn . qter --之前我初学 Qt Embedded 时也以前出没于部分 Qt 论坛-- 技术问答的现状 我要说的是一个现象:在这些技术论坛里.提问的人非常多.回答的人也非常多,但真正能解决这个问题的.究竟有多少?这是无法统计的,虽然像 CSDN 的论坛有较为完好的结贴机制.依旧不能解决这个问题. 假设

创业,宁愿单兵作战也不要参在拙劣的团队里继续寻觅队友

http://www.nowamagic.net/librarys/news/detail/1419 我们都听过一个说法:团队合作要比单打独斗来得容易成功(Startup Genome project以及 The Founder's Dilemmas的数据都能证明).共同创办人不同的技术专长能够彼此互补.给予心理支持.阻止你盲目追求不切实际的梦想,或者反过来说,重新唤起你熄灭的野心.以上都有道理,不过前提是,你得找到「对」的共同创办人.跟错误的人一起工作,将带来完全相反的结局,并且必然失败. 我