首页后端开发ASP.NETopenjudge 2971:抓住那头牛 解题过程(附代码)

openjudge 2971:抓住那头牛 解题过程(附代码)

时间2024-01-31 04:43:03发布访客分类ASP.NET浏览736
导读:收集整理的这篇文章主要介绍了openjudge 2971:抓住那头牛 解题过程(附代码),觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章主要讲述了oPEnjudge 2971:抓住那头牛的解题过程,有需要的朋友可以了解一下,希望能...
收集整理的这篇文章主要介绍了openjudge 2971:抓住那头牛 解题过程(附代码),觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章主要讲述了oPEnjudge 2971:抓住那头牛的解题过程,有需要的朋友可以了解一下,希望能够对你有帮助。

总时间限制: 2000ms

内存限制: 65536kB

描述

农夫知道一头牛的位置,想要抓住它。农夫和牛都位于数轴上,农夫起始位于点N(0=N=100000),牛位于点K(0=K=100000)。农夫有两种移动方式:

1、从X移动到X-1或X+1,每次移动花费一分钟。

2、从X移动到2*X,每次移动花费一分钟。

假设牛没有意识到农夫的行动,站在原地不动。农夫最少要花多少时间才能抓住牛?

输入

两个整数,N和K

输出

一个整数,农夫抓到牛所要花费的最小分钟数

样例输入

5 17

样例输出

4

这道题就是一道水题。但是。它非常的坑。总结一下BFS就是

1,数组开够。

2,牛和老夫的方向判断。

3,重复入队的判断。

4,超界的判断。

5,人品好。 这是关键。

代码如下:

1 #includecstdio>
     2 #includealgorIThm>
     3 using namespace std;
     4 int x,y;
 5 struct node 6 {
     7     int x,times;
 8 }
    ;
     9 node q[3000010];
    10 int visit[1000010];
    11 int heads=1,last=1;
12 int main()13 {
    14     scanf("%d%d",&
    x,&
    y);
15     if(yx)16     {
    17       PRintf("%d",x-y);
    18       return 0;
19     }
    20     node a;
    21     a.x=x;
    a.times=0;
    22     q[heads]=a;
23     while(heads=last)24     {
    25       node n=q[heads];
    26       heads++;
27       if(n.x==y)28       {
    29           printf("%d",n.times);
    30           break;
31       }
    32       node n1=n;
    33       n1.times++;
    34       n1.x+=1;
    35       if(!visit[n1.x])q[++last]=n1 , visit[n1.x]=1;
    36       n1.x-=2;
    37       if(!visit[n1.x])q[++last]=n1 , visit[n1.x]=1;
    38       n1.x+=1;
    39       n1.x*=2;
    40       if(n1.x=100000&
    &
    !visit[n1.x])q[++last]=n1 , visit[n1.x]=1;
41     }
    42     return 0;
43 }
      

简直尴尬。

相关教程:C++视频教程

以上就是openjudge 2971:抓住那头牛 解题过程(附代码)的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

上一篇: c++输出二维字符矩阵对齐下一篇:Ruby和C ++之间的异同点是什么?猜你在找的ASP.NET相关文章 C# 一些面试试题的实例教程2022-05-16.NET 6开发TodoList应用之请求日志组件HttpLogging介绍2022-04-16.NET 6中间件Http Logging使用介绍2022-04-16gojs一些实用的高级用法2022-04-16.NET6开发TodoList应用之实现查询排序2022-04-16.NET6开发TodoList应用之实现数据塑形2022-04-16.NET微服务架构CI/CD自动打包镜像2022-04-16Asp.Net Core 使用Monaco Editor 实现代码编辑器功能2022-04-16.NET微服务架构CI/CD自动构建Jenkins+Gitee2022-04-16.Net Core微服务网关Ocelot集成Consul2022-04-16 其他相关热搜词更多phpjavapython程序员loadpost-format-gallery

若转载请注明出处: openjudge 2971:抓住那头牛 解题过程(附代码)
本文地址: https://pptw.com/jishu/593495.html
javascript splice方法怎么用 如何安装并使用node版本工具gnvm(win环境)

游客 回复需填写必要信息