CodeFoeces-3A

题目

原题链接:A. Shortest path of the king

题意

找到a到b的最短路径。每次判断当前位置,走最优路线。

代码

#include<bits/stdc++.h>
using namespace std;
int s1,s2,t1,t2,ans=0;
char s[2];
string t[1000];
void bf(int c,int r) {
    if(c<t1 && r>t2) {
        t[ans++]="RD";
        bf(c+1,r-1);
    } else if(c<t1 && r<t2) {
        t[ans++]="RU";
        bf(c+1,r+1);
    } else if(c>t1 && r>t2) {
        t[ans++]="LD";
        bf(c-1,r-1);
    } else if(c>t1 && r<t2) {
        t[ans++]="LU";
        bf(c-1,r+1);
    } else if(c==t1 && r>t2) {
        t[ans++]="D";
        bf(c,r-1);
    } else if(c==t1 && r<t2) {
        t[ans++]="U";
        bf(c,r+1);
    } else if(c<t1 && r==t2) {
        t[ans++]="R";
        bf(c+1,r);
    } else if(c>t1 && r==t2) {
        t[ans++]="L";
        bf(c-1,r);
    }
}
int main() {
    scanf("%s",s);
    s1=s[0]-'a'+1;
    s2=s[1]-'0';
    scanf("%s",s);
    t1=s[0]-'a'+1;
    t2=s[1]-'0';
    bf(s1,s2);
    printf("%d\n",ans);
    for(int i=0;i<ans;i++){
        cout<<t[i]<<endl;
    }
    return 0;
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,768评论 0 33
  • -1- 刚刚吃完饭,听家里人聊一些近来的家常,享受美好的饭后时光。突然,一向安静的手机躁动了起来,不知所以然的我出...
    小卜头阅读 361评论 0 1
  • “读书破万卷,下笔如有神。”读书的修行绝对是每个人必备的功课。 “知识可以改变命运”从整个生命的角度讲,绝对是一条...
    文姐28101阅读 400评论 0 6
  • 恋爱时一定要选一个你爱的人,结婚时一定要选一个爱你的人。 漫漫长路,总有那么几个人是真心爱你的,即使遇...
    阿祥_阅读 445评论 0 0
  • 一个小男孩捏着1美元硬币,沿街一家一家商店地询问:“请问您这儿有上帝卖吗?”店主要么说没有,要么嫌他在搞乱,不由分...
    红霞满天飞阅读 243评论 0 1