m0_74904504 2022-11-20 14:41 采纳率: 0%
浏览 5
已结题

OJ上的,做不出来,求解答

实在是想不明白了,求解惑,下面是我写的代码,只能通过部分测试点,比较两者到达终点前的时间大小,狮鹫算的是终点前一步的时间,还有这个不一定按最最优路径走,理解的事是同行或同列要多走两步到终点,想知道哪里错了,和如何实现
{#include <stdio.h>

#include<math.h>

int main(){

int x1,y1,x2,y2,x3,y3;

double speed1,speed2;

double t1,t2,t3,t4,t5;

double zd,od;

scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);

scanf("%lf%lf",&speed1,&speed2);

zd=abs(x3-x2)+abs(y3-y2);

od=abs(x2-x1)+abs(y2-y1);

if(x1==x2 && x2==x3){

    if((y3>y1 && y1>y2) || (y3<y1 && y1<y2)){

        zd+=2;

    }

}


if(y1==y2 && y2==y3){


    if((x3>x1 &&x1>x2) || (x3<x1 &&x1<x2)){

        zd+=2;

    }

}

t1=zd*1.0/(speed2*1.0);

t2=od*1.0/(speed1*1.0)+zd*1.0/(speed1*1.0);

t4=(zd-1.0)*1.0/(speed2*1.0);

t5=od*1.0/(speed1*1.0)+(zd-1.0)*1.0/(speed1*1.0);


if(x1==x2 && y1==y2){

    t1=2;

    t2=1;

}


if(x2==x3 && y2==y3){

    t1=1;

    t2=2;

}


if(t1>t5){

    printf("No");

}


else{

    printf("Yes");

}

return 0;

}}

img

img

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-11-20 16:03
    关注
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月10日
  • 修改了问题 11月20日
  • 创建了问题 11月20日

悬赏问题

  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置