2429: [HAOI2006]聪明的猴子
2429: [HAOI2006]聪明的猴子
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 448 Solved: 309
[Submit][Status][Discuss]
Description
Input
第1行为一个整数,表示猴子的个数M(2<=M<=500);
第2行为M个整数,依次表示猴子的最大跳跃距离(每个整数值在1--1000之间);
第3行为一个整数表示树的总棵数N(2<=N<=1000);
第4行至第N+3行为N棵树的坐标(横纵坐标均为整数,范围为:-1000--1000)。
(同一行的整数间用空格分开)
Output
包括一个整数,表示可以在这个地区的所有树冠上觅食的猴子数
Sample Input
1 2 3 4
6
0 0
1 0
1 2
-1 -1
-2 0
2 2
Sample Output
HINT
对于40%的数据,保证有2<=N <=100,1<=M<=100
对于全部的数据,保证有2<=N <= 1000,1<=M=500
Source
题解:一个裸的最小生成树,直接求出来之后判断下就是了= =
/**************************************************************
Problem:
User: HansBug
Language: Pascal
Result: Accepted
Time: ms
Memory: kb
****************************************************************/ var
i,j,k,l,m,n,mm:longint;
b:array[..,..] of longint;
a:array[..,..] of longint;
c,d:array[..] of longint;
function max(x,y:longint):longint;inline;
begin
if x>y then max:=x else max:=y;
end;
procedure swap(var x,y:longint);inline;
var z:longint;
begin
z:=x;x:=y;y:=z;
end;
procedure sort(l,r:longint);inline;
var i,j,x,y:longint;
begin
i:=l;j:=r;x:=a[(l+r) div ,];
repeat
while a[i,]<x do inc(i);
while a[j,]>x do dec(j);
if i<=j then
begin
swap(a[i,],a[j,]);
swap(a[i,],a[j,]);
swap(a[i,],a[j,]);
inc(i);dec(j);
end;
until i>j;
if i<r then sort(i,r);
if l<j then sort(l,j);
end;
function getfat(x:longint):longint;inline;
begin
if x<>c[x] then c[x]:=getfat(c[x]);
exit(c[x]);
end;
begin
readln(m);
for i:= to m do read(d[i]);
readln;l:=;readln(n);
for i:= to n do readln(b[i,],b[i,]);
for i:= to n- do
for j:=i+ to n do
begin
inc(l);a[l,]:=i;a[l,]:=j;
a[l,]:=(b[i,]-b[j,])*(b[i,]-b[j,])+(b[i,]-b[j,])*(b[i,]-b[j,]);
end;
sort(,l);
for i:= to n do c[i]:=i;
j:=;mm:=;
for i:= to n- do
begin
repeat
inc(j);
k:=getfat(a[j,]);
l:=getfat(a[j,]);
until k<>l;
mm:=max(mm,a[j,]);
c[k]:=l;
end;
l:=;
for i:= to m do if (d[i]*d[i])>=mm then inc(L);
writeln(l);
readln;
end.
2429: [HAOI2006]聪明的猴子的更多相关文章
- 最小生成树 2429: [HAOI2006]聪明的猴子
BZOJ 2429: [HAOI2006]聪明的猴子 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 877 Solved: 566[Submit][ ...
- BZOJ 2429: [HAOI2006]聪明的猴子( MST )
水题, 求MST即可. -------------------------------------------------------------------------------- #includ ...
- BZOJ 2429: [HAOI2006]聪明的猴子
Description 在一个热带雨林中生存着一群猴子,它们以树上的果子为生.昨天下了一场大雨,现在雨过天晴,但整个雨林的地 表还是被大水淹没着,部分植物的树冠露在水面上.猴子不会游泳,但跳跃能力比较 ...
- bzoj 2429: [HAOI2006]聪明的猴子 (最小生成树)
链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2429 思路:就是找最小生成树最大的一条边,最小生成树的性质,最后加入的那条边就是最大的 实现 ...
- BZOJ2429[HAOI2006]聪明的猴子[最小生成树 kruskal]
2429: [HAOI2006]聪明的猴子 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 896 Solved: 575[Submit][Statu ...
- 最小生成树——[HAOI2006]聪明的猴子
题目:[HAOI2006]聪明的猴子 描述: [题目描述] 在一个热带雨林中生存着一群猴子,它们以树上的果子为生.昨天下了一场大雨,现在雨过天晴,但整个雨林的地表还是被大水淹没着, 猴子不会游泳,但跳 ...
- 洛谷—— P2504 [HAOI2006]聪明的猴子
P2504 [HAOI2006]聪明的猴子 题目描述 在一个热带雨林中生存着一群猴子,它们以树上的果子为生.昨天下了一场大雨,现在雨过天晴,但整个雨林的地表还是被大水淹没着,部分植物的树冠露在水面上. ...
- 洛谷——P2504 [HAOI2006]聪明的猴子
P2504 [HAOI2006]聪明的猴子 题目描述 在一个热带雨林中生存着一群猴子,它们以树上的果子为生.昨天下了一场大雨,现在雨过天晴,但整个雨林的地表还是被大水淹没着,部分植物的树冠露在水面上. ...
- cogs 1310. [HAOI2006]聪明的猴子
1310. [HAOI2006]聪明的猴子 ★ 输入文件:monkey.in 输出文件:monkey.out 简单对比时间限制:1 s 内存限制:128 MB [题目描述] 在一个热带 ...
随机推荐
- Webx3学习笔记(2)——基本流程
Webx3项目是运行在jetty/tomcat这种Web应用容器中的,Web应用的模式都是请求-响应的.一个请求通过浏览器发出,封装为HTTP报文到达服务端,被容器接受到,封装为HttpRequest ...
- jQuery如何实现点击页面获得当前点击元素
获得jquery对象: function foo(e){ var obj = $(e.target); }
- 支付宝 Android 版使用的开源组件
支付宝 Android 版使用的开源组件 前言: 花了点时间整理了 支付宝 Android 客户端使用的开源组件,给需要的同学.在你不知道用什么开源框架的时候可以作下参考,毕竟支付宝是阿里的重量级产品 ...
- Mac bash rc
###################################### ########## .bashrc ###################################### cas ...
- 转:Oracle弃用sun.reflect.Reflection.getCallerClass
http://www.infoq.com/cn/news/2013/07/Oracle-Removes-getCallerClass 作为Java开发者,我们经常忽略@Deprecated注释,继续使 ...
- Ubuntu 16.04安装配置Samba服务
Samba是开源软件,用来让Linux系统与Windows系统的SMB/CIFS网络协定做连结,实现Windows主机与Linux服务器之间的资源共享.Samba服务为两种不同的操作系统架起了一座桥梁 ...
- W3Cschool学习笔记——HTML5基础教程
HTML5 建立的一些规则: 新特性应该基于 HTML.CSS.DOM 以及 JavaScript. 减少对外部插件的需求(比如 Flash) 更优秀的错误处理 更多取代脚本的标记 HTML5 应该独 ...
- 【4Large-Style】前端框架设计——Button 的设计思路
Button 的设计 Button 作为基本的 Web 元素,看似简单,却需要非常用心的设计,因为 Button 作为按钮,是具有多个不同的状态,每种状态都基本上需要进行一些特殊的优化设计,以让组件更 ...
- 调用win32 api 函数SendMessage() 实现消息直接调用
简单的调用例子, 适合初学者学习,当然 我也是初学者. #include <windows.h> #include <stdio.h> #include <stdlib. ...
- 隐藏Apache的版本号及其它敏感信息
首先,打开配置文件: /etc/apache2/apache2.conf 来修改ServerTokens 的配置: 找到:ServerTokens Full 所在行,将其改为: ServerToken ...