当前位置: 首页 > 编程日记 > 正文

HLG 1481 Attack of the Giant n-pus【二分+二分图完全匹配】

题意: 有 p 个水手和一个章鱼,章鱼有 n 个脚,知道了所有单位的坐标,和船长以及船员的速度,船长想去攻击章鱼的头部,但是只有在章鱼所有的脚都被水手控制的情况下才会开始朝章鱼头部进攻,问如何分配水手控制的触须,才能在最短时间内是船长攻击到其头部。

分析: 二分枚举船员移动的时间ti, 如果水手与某个触须接触所要的时间小于 ti,就在该水手与该触须之间连一条边,找出满足水手与触须最大匹配等于 n 的最小时间,最后加上船长移动到章鱼头部需要的时间即为答案。

#include<cstring>
#include<cstdio>
#include<cmath>
#define clr(x)memset(x,0,sizeof(x))
int link[102];
bool v[102];
struct p
{int to,next;
}e[10002];
struct node
{double x,y;double v;
}te[102],pr[102],ca,he;
int tot;
int head[102];
void add(int s,int u)
{e[tot].to=u;e[tot].next=head[s];head[s]=tot++;
}
int find(int x)
{int i,k;for(i=head[x];i;i=e[i].next){k=e[i].to;if(!v[k]){v[k]=true;if(link[k]==0||find(link[k])){link[k]=x;return 1;}}}return 0;
}
int n,p;
double g[102][102];
bool ok(double ti)
{int i,j;tot=1;clr(head);clr(link);for(i=1;i<=p;i++)for(j=1;j<=n;j++)if(g[i][j]<ti)add(i,j);int s=0;for(i=1;i<=p;i++){clr(v);if(find(i))s++;}if(s==n)return true;return false;
}
double res;
double dis(node a,node b)
{return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
int main()
{int t,i,j;double low,high,mid;scanf("%d",&t);while(t--){scanf("%d%d",&n,&p);scanf("%lf%lf%lf",&ca.x,&ca.y,&ca.v);for(i=1;i<=p;i++)scanf("%lf%lf%lf",&pr[i].x,&pr[i].y,&pr[i].v);scanf("%lf%lf",&he.x,&he.y);for(i=1;i<=n;i++)scanf("%lf%lf",&te[i].x,&te[i].y);low=0;high=-1;for(i=1;i<=p;i++)for(j=1;j<=n;j++){g[i][j]=dis(pr[i],te[j])/pr[i].v;if(g[i][j]>high)high=g[i][j];}while(low<high){mid=(low+high)/2;if(ok(mid))high=mid-0.0000000001;else  low=mid+0.0000000001;}printf("%.9lf\n",low+dis(ca,he)/ca.v);}return 0;
}

转载于:https://www.cnblogs.com/dream-wind/archive/2012/07/23/2604649.html

相关文章:

美亚排名超高的Docker入门书,不止简单易懂

在美国亚马逊&#xff0c;有一本书的影响力超高的Docker入门书&#xff0c;在操作系统分类中排行第一&#xff0c;超越了众多实力派Docker书&#xff0c;众多五星好评。也许你有所耳闻&#xff0c;这本书就是《深入浅出Docker》。这是一本关于Docker的图书。这本书的宗旨是从零…

虚拟机配置参数

标准参数&#xff1a;保证所有JVM的实现都可以支持-client设置Hotspot client jvm&#xff0c;64位jdk会忽略该参数并设置-server-Dpropertyvalue用于设置系统属性&#xff0c;如果value中有空格&#xff0c;则需要设置-Dproperty"value value"-server选择Hotspot Se…

【Qt】QAudioDeviceInfo获取不到音频设备

1、问题描述 使用QAudioDeviceInfo在开发机上可以获取本地的音频设备&#xff0c;但是在目标机上获取不到。 已经将libQt5Multimedia库拷贝到目标机上&#xff08;如果没有将会报错&#xff09;。 2、原因 没有将audio的插件拷贝到目标机上&#xff0c;audio插件在Qt安装目录…

异常:android.os.NetworkOnMainThreadException

Android 4.1项目&#xff1a;使用新浪微博分享时报&#xff1a; android.os.NetworkOnMainThreadException 网上搜索后知道是因为版本问题&#xff0c;在4.0之后在主线程里面执行Http请求都会报这个错&#xff0c;也许是怕Http请求时间太长造成程序假死的情况吧。那么网上的朋友…

阿里带火的中台到底是什么?白话中台战略

作者 | 王健&#xff0c;ThoughtWorks首席咨询师。 十多年国内外大型企业软件设计开发&#xff0c;团队组织转型经验。一直保持着对技术的热爱&#xff0c;热衷于技术分享。目前专注在企业平台化转型、中台战略规划&#xff0c;微服务架构与实施&#xff0c;大型遗留系统服务化…

【Qt】Ubuntu18.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform plugin “xcb“问题

1、问题描述 在ubuntu18.04中第一次安装QT5,运行时报错 qtcreator.sh qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be init…

Bootstrap4 更新笔记

在bootstrap4里&#xff0c; 1. 旧版本bootstrap well变成了什么&#xff1f; well原本是‘’淡灰墙‘’样式。 Bootstrap 4 Beta card-block is now card-body, and bg-faded is now bg-light: <div class"card card-body bg-light"> Well </div>ref&am…

二、JavaScript基础 学好jQuery要了解的

JavaScript与ECMAScript ECMAScript 通过ECMA-262标准的脚本程序设计语言 ECMAScript标准下有 javascript jscript actionscript JavaScript分为值类型和引用类型两大类&#xff0c;有时也称为原始值和引用值。值类型&#xff1a;存储在栈(stack)中&#xff0c;一个值类型的变量…

一文综述经典的深度文本分类方法

作者 | 何从庆转载自AI算法之心&#xff08;ID:AIHeartForYou&#xff09;笔者整理最近几年比较经典的深度文本分类方法&#xff0c;希望帮助小伙伴们了解深度学习在文本分类中的应用。Convolutional Neural Networks for Sentence Classification (EMNLP 2014)Kim在EMNLP2014…

【FFmpeg】便捷函数汇总(持续更新中...)

音频相关&#xff1a; 1、由通道布局获取通道数 int av_get_channel_layout_nb_channels(uint64_t channel_layout);2、由通道数获取默认的通道布局 int64_t av_get_default_channel_layout(int nb_channels);3、返回采样格式对应的字符串名字 const char *av_get_sample_fm…

云服务器代金券

最近腾讯云与阿里云的促销活动都很好&#xff0c;有需要云服务器的可以领取代金券购买 https://www.art-china.club/ 至于配置调试的问题&#xff0c;可以问我&#xff0c;友情帮忙。转载于:https://blog.51cto.com/dnuser/2167896

NLP最新资源:论文、代码、博客、视频一应俱全

整理 | Rachel出品 | AI 科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;【导读】在近几年&#xff0c;NLP 领域得到了快速的发展&#xff0c;包括 ELMo &#xff0c;BERT在内的新方法不断涌现&#xff0c;显著提高了模型在一系列任务的表现。在本文中&#xff0c;…

android在线播放音乐

2019独角兽企业重金招聘Python工程师标准>>> android在线音乐 一种方法是调用android自带的播放器 //调用系统自带播放器Intent intent new Intent();Uri uri Uri.parse("http://mul1.tximg.cn/music/group/bbs/mp3/44/100715/1279159638887.mp3?z909255638…

head和tail命令详解

基础命令学习目录首页 原文链接&#xff1a;https://www.cnblogs.com/amosli/p/3496027.html 当要查看上千行的大文件时&#xff0c;我们可不会用cat命令把整个文件内容给打印出来&#xff0c;相反&#xff0c;我们可能只需要看文件的一小部分地内容&#xff08;例如文件的前十…

【FFmpeg】ffmpeg工具源码分析(四):filter(过滤器、滤镜)详解

1、简介 FFmpeg用来处理音视频,实现处理功能的核心就是filter(滤镜),和我们使用的美颜功能的滤镜意思差不多,FFmpeg的filter(滤镜)不仅可以处理视频,还能处理音频、字幕等。 官方说明: 在编码之前,ffmpeg可以使用 libavfilter 库中的过滤器处理原始音频和视频帧。几…

【ZooKeeper Notes 14】数据模型

转载请注明&#xff1a;ni掌柜 nileadergmail.com本文主要讲述ZooKeeper的数据模型&#xff0c;包括ZooKeeper的数据视图&#xff0c;节点的层次结构以及节点类型等基本属性。Zookeeper的视图结构类似标准的Unix文件系统&#xff0c;但是没有引入文件系统相关概念&#xff1a;目…

李理:为什么说人工智能可以实现?

作者 | Just出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;尽管市面上关于深度学习的书籍很多&#xff0c;环信 AI 负责人李理认为大部分只关注理论或只关注实践。于是&#xff0c;基于他对深度学习多年的理解&#xff0c;自己着整理手写了一本深度学习理论与实战书…

【FFmpeg】FFmpeg编解码H264产生马赛克、伪影的解决方法

1、问题描述 使用FFmpeg编码H264,再解码显示时,产生马赛克:有时是在画面静止时,静止时间越长,马赛克、伪影越多;有时是在画面切入切出时;有时是在网络带宽不够时 2、原因分析 2.1 丢帧 网络状况差的情况下(带宽不足),容易丢帧,在视频画面播放过程中,若I帧丢失了,…

LINUX内核升级

内核版本是2.6.18&#xff0c;新的内核是2.6.26。 1.下载新内核&#xff0c;下载网站www.kernel.org 2.copy内核到/usr/local/src下 3.解压内核 解压内核命令 tar -xjvf linux-2.6.26.tar.bz2 4.清理以前编译所生成的文件 命令为 make distclean&#xff0c;如果以前没有编…

我在美团的这两年,想和你分享

作者 | 石晓文来源 | 小小挖掘机&#xff08;ID&#xff1a;wAIsjwj&#xff09;012017.08.14&#xff0c;结束了两周的等待&#xff0c;如愿以偿开始了自己的美团实习生活&#xff0c;本来抱着三五个月走人&#xff0c;争取下一份实习的心态&#xff0c;没想到一直到转为暑期实…

【Qt】QtCreator updatePchInfo:switching to none

1、Pch名词解释 Pch(PreCompiled Headers)预编译头文件。 使用方法: CONFIG+=precompile_header PRECOMPILED_HEADER=XXX.h 2、updatePchInfo:switching to none 和QtCreator代码格式化Beautifier插件配置了clang code model有关系。 猜测:clang分析预编译头文件相关,…

学习框架、库的经验

熟悉基础语法把框架的功能过一遍&#xff0c;看看有哪些功能从文档的demo入口去学习上手会更快在你的开发目录要有一个专门写demo的页面&#xff0c;用以调试页面&#xff0c;试验新功能如果框架或者库提供有demo则更好&#xff0c;可以从中得到很多有用的东西

开源应用程序结构

2019独角兽企业重金招聘Python工程师标准>>> 给有兴趣的同学介绍的。这里面介绍了很多著名的开源软件的架构&#xff0c;相信读后会有所收获。 地址&#xff1a;http://www.aosabook.org/en/index.html 转载于:https://my.oschina.net/qinlinwang/blog/71649

免费GPU哪家强?谷歌Kaggle vs. Colab

作者 | Jeff Hale译者 | Monanfei责编 | 夕颜出品 | AI科技大本营&#xff08;id&#xff1a;rgznai100&#xff09;谷歌有两个平台提供免费的云端GPU&#xff1a;Colab和Kaggle&#xff0c; 如果你想深入学习人工智能和深度学习技术&#xff0c;那么这两款GPU将带给你很棒学习…

【SVN】svn“E155017工作副本的参考文件损坏、E200014文件校验和不匹配”的解决方法

1、问题描述 在执行svn提交时报错 svn: E155017: 工作副本的参考文件损坏 svn: E200014: ‘test.cpp’ 的文件校验和不匹配&#xff1a; 期望&#xff1a;xxxx 实际&#xff1a;xxxx 2、解决方法 2.1 拷贝 最好将提交的项目拷贝一份&#xff1b; 2.2 删除 使用svn rm --k…

QT程序启动加载流程简介

1. QT应用程序启动加载流程简介1.1 QWS与QPA启动客户端程序区别1.1.1 QWS(Qt Window System)介绍QWS(Qt Windows System)是QT自行开发的窗口系统&#xff0c;体系结构类似X Windows的C/S结构。QWS Server在物理设备上显示&#xff0c;QWS Client实现界面&#xff0c;两者…

QQ2012 Under Ubuntu

下载地址&#xff1a; QQ2012 Under Ubuntu转载于:https://www.cnblogs.com/ismdeep/archive/2012/08/09/2630067.html

25亿布局大湾区,创新工场的AI下一站

2019年6月5日&#xff0c;创新工场大湾区总部正式开业启动&#xff0c;集“产业投资AI 研究院商业赋能落地”三个功能为一体。当天创新工场还首次分享人工智能工程院成立两年来的成绩单&#xff0c;创新奇智的大湾区布局&#xff0c;并发布大湾区人才战略。创新工场也正式宣布第…

【TX2】TX2开发板系统默认串口有ttyS0(调试口)、ttyTHS1、ttyTHS2、ttyTHS3,通过修改设备树文件,可以新增三个串口

1、简述 TX2开发板系统默认串口有ttyS0&#xff08;调试口&#xff09;、ttyTHS1、ttyTHS2、ttyTHS3&#xff0c;通过修改设备树文件&#xff0c;可以新增三个串口。 2、设备树 设备树中关于串口部分的描述 2.1 基础配置 注意&#xff1a;在这里状态都配置成禁止&#xff…

unix的发展

转载http://blog.51cto.com/1193432/1671058转载于:https://www.cnblogs.com/vwei/p/9588823.html