Car的旅行路线  蓝桥真题

2024-02-22 19:08
文章标签 蓝桥 真题 路线 旅行 car

本文主要是介绍Car的旅行路线  蓝桥真题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

蓝桥题是真的坑  样例上写的是t组数据的格式 但是测试数据根本没有t 都是单组 这不是坑人吗?

其实就是最短路裸题 建图时需要一点计算几何

对于每个矩形只给任意三个顶点 利用向量点乘判断直角点

假设 1和3 2和4 互为对角点 那就满足 x1+x3=x2+x4 且 y1+y3=y2+y4 以此求出最后一个点

 

 

#include <bits/stdc++.h>
using namespace std;
#define eps 1e-8
#define N 10000000000000000000000.0struct node1
{double x;double y;
};struct node2
{bool friend operator < (node2 n1,node2 n2){return n1.val>n2.val;}double val;int id;
};priority_queue <node2> que;
node1 point[410];
double e[410][410];
double pre[110],dis[410];
double c;
int book[410];
int n;double cal(int u,int v)
{return sqrt(pow(point[u].x-point[v].x,2)+pow(point[u].y-point[v].y,2));
}double dijkstra(int ss,int ee)
{node2 cur,tem;double w;int i,u,v;while(!que.empty()) que.pop();for(i=0;i<n;i++){dis[i]=N;book[i]=0;}tem.id=ss,tem.val=0.0;que.push(tem);dis[ss]=0.0;while(!que.empty()){cur=que.top();que.pop();u=cur.id;if(book[u]) continue;book[u]=1;for(v=0;v<n;v++){if(u!=v&&!book[v]){w=e[u][v];if(dis[v]>dis[u]+w){dis[v]=dis[u]+w;tem.id=v,tem.val=dis[v];que.push(tem);}}}}return min(min(dis[4*ee],dis[4*ee+1]),min(dis[4*ee+2],dis[4*ee+3]));
}int main()
{double x1,y1,x2,y2,x3,y3,x4,y4,ans;int ss,ee,i,j;while(scanf("%d%lf%d%d",&n,&c,&ss,&ee)!=EOF){ss--,ee--;for(i=0;i<n;i++){scanf("%lf%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3,&pre[i]);if(fabs((x2-x1)*(x3-x2)+(y2-y1)*(y3-y2))<eps)//2{x4=x1+x3-x2;y4=y1+y3-y2;}else if(fabs((x3-x2)*(x1-x3)+(y3-y2)*(y1-y3))<eps)//3{x4=x1+x2-x3;y4=y1+y2-y3;}else//1{x4=x2+x3-x1;y4=y2+y3-y1;}point[4*i].x=x1,point[4*i].y=y1;point[4*i+1].x=x2,point[4*i+1].y=y2;point[4*i+2].x=x3,point[4*i+2].y=y3;point[4*i+3].x=x4,point[4*i+3].y=y4;}n*=4;for(i=0;i<n;i++){for(j=0;j<n;j++){if(i/4==j/4){e[i][j]=cal(i,j)*pre[i/4];}else{e[i][j]=cal(i,j)*c;}}}ans=N;for(i=0;i<4;i++){ans=min(ans,dijkstra(4*ss+i,ee));}printf("%.1f\n",ans);}return 0;
}

 

 

 

这篇关于Car的旅行路线  蓝桥真题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/736205

相关文章

华为OD机试真题-学生方阵-2024年OD统一考试(E卷)

题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数, 接下来的 n行为矩阵元素,元素间用""分隔。 输出描述 输出一个整数,表示矩阵中最长的位

C语言蓝桥杯

一、语言基础 竞赛常用库函数 最值查询 min_element和max_element在vector(迭代器的使用) nth_element函数的使用 例题lanqiao OJ 497成绩分析 第一种用min_element和max_element函数的写法 第二种用min和max的写法 二分查找 二分查找只能对数组操作 binary_s

2024年AMC10美国数学竞赛倒计时两个月:吃透1250道真题和知识点(持续)

根据通知,2024年AMC10美国数学竞赛的报名还有两周,正式比赛还有两个月就要开始了。计划参赛的孩子们要记好时间,认真备考,最后冲刺再提高成绩。 那么如何备考2024年AMC10美国数学竞赛呢?做真题,吃透真题和背后的知识点是备考AMC8、AMC10有效的方法之一。通过做真题,可以帮助孩子找到真实竞赛的感觉,而且更加贴近比赛的内容,可以通过真题查漏补缺,更有针对性的补齐知识的短板。

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

上海大学《2022年836+915自动控制原理真题及答案》 (完整版)

Part1:2022年上海大学真题题目 学硕836 专硕915 Part2:2022年上海大学真题答案 学硕836 专硕915

大模型的学习路线(非常详细)神仙级教程,手把手教会你

如果读者朋友不想深入学习大模型,则了解提示词的使用原则也可以了。要是既不想深入学习,又要做大模型相关的项目,则对于工程同学来说,学习RAG也能把大模型玩转起来(可参考:[大语言模型RAG落地方案]。下面的步骤写给想系统性学习大模型的朋友们。(后续打算写一个大模型学习系列,详细介绍相关知识点,欢迎关注) 先来一张整体结构图,越是下面部分,越是基础: 可以按以下步骤学习: 1. 理解基础概念

C#/.NET/.NET Core推荐学习路线文档文章

前言 专门为C#/.NET/.NET Core推荐学习路线&文档&文章提供的一个Issues,各位小伙伴可以把自己觉得不错的学习路线、文档、文章相关地址分享出来🤞。 https://github.com/YSGStudyHards/DotNetGuide/issues/10 🏷️C#/.NET/.NET Core优质学习资料 📚.NET 入门教程 📚

找不同-第15届蓝桥省赛Scratch初级组真题第4题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第183讲。 如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,查阅教程更方便。 第15届蓝桥杯省赛已于2024年8月24日落下帷幕,编程题一共有5题,分别如下: 猪八戒落地 游乐场 画西瓜 找不同 消

【蓝桥杯嵌入式(一)程序框架和调度器】

蓝桥杯嵌入式(一)程序框架和调度器 序、代码命名规则零、STM32和8051⼀、软件及环境安装⼆、⼯程框架搭建1.时钟配置2、SYS配置3、⼯程配置4、NVIC配置5.、Keil配置 三、系统初始化四、任务调度器 链接: 视频出处 序、代码命名规则 以下是一些常见的举例 零、STM32和8051 链接: 8位和32位单片机最本质区别 ⼀、软件及环境安装

社交平台找旅游搭子一起旅行靠谱吗?答案是不要太爽!

哈喽小伙伴们,今天要跟大家分享一个超级棒的小程序——咕哇找搭子!作为一个热爱自由行的人,最头疼的就是找不到志同道合的小伙伴。但自从用了这个咕哇小程序后,一切都变得简单又充满乐趣啦!🎉 上个月,我计划去云南旅行,就试着在咕哇上发布了我的行程信息。没想到很快就收到了几位朋友的回应,其中一位叫小莲的朋友特别投缘。我们不仅目的地一样,就连兴趣爱好都出奇地相似,于是我们就决定一起出发啦!👭