SSL 1637——蘋果
Description
農場的夏季是收穫的好季節。在Farmer John的農場,他們用一種特別的方式來收蘋果:Bessie搖蘋果樹,蘋果落下,然後Farmer John盡力接到儘可能多的蘋果。
作為一個有經驗的農夫, Farmer John將這個過程座標化。他清楚地知道什麼時候(1<=t<=1,000,000)什麼位置(用二維座標表示,-1000<=x,y<=1000)會有蘋果落下。他只有提前到達那個位置,才能接到那個位置掉下的蘋果。
一個單位時間,Farmer John能走s(1<=s<=1000)個單位。假設他開始時(t=0)站在(0,0)點,他最多能接到多少個蘋果?
Input
第一行:兩個整數,N(蘋果個數,n<=5000)和S(速度);
第2..N+1行:每行三個整數Xi,Yi,Ti,表示每個蘋果掉下的位置和落下的時間。
Output
僅一行,一個數,表示最多能接到幾個蘋果
Sample Input
5 3
0 0 1
0 3 2
-5 12 6
-1 0 3
-1 1 2
Sample Output
3 (Farmer John可以接到第1,5,4個蘋果)
思路
先將蘋果下落的時間從小到大排序
然後用dis(i,j)表示兩點之間的距離為sqrt(sqr(x1-x2)+sqr(y1-y2))
如果從第i個蘋果到第j個蘋果所用的時間小於他的速度*(第i個蘋果下落的時間-第j個蘋果下落的時間),就f[i]:=max(f[i],f[j]+1)
程式碼如下:
const maxapp=5000;
type as=record
x,y,time:longint;
end;
var f:array [0..maxapp] of longint;
app:array[0..maxapp] of as;
n,s:longint;
i,j,ans:longint;
m:real;
procedure init;
var i,j,k:longint;
begin
readln(n,s);
for i:=1 to n do
readln(app[i].x,app[i].y,app[i].time);
app[0].x:=0; app[0].y:=0; app[0].time:=0;
end;
procedure qsort(l,r: longint);
var i,j,x: longint;
tmp:as;
begin
i:=l;
j:=r;
x:=app[(l+r) div 2].time;
repeat
while app[i].time<x do inc(i);
while x<app[j].time do dec(j);
if not(i>j) then
begin
tmp:=app[i];
app[i]:=app[j];
app[j]:=tmp;
inc(i);
j:=j-1;
end;
until i>j;
if l<j then qsort(l,j);
if i<r then qsort(i,r);
end;
function dis(i,j:longint):real;
begin
dis:=sqrt(sqr(app[i].x-app[j].x)+sqr(app[i].y-app[j].y));
end;
begin
init;
qsort(1,n);
f[0]:=0;
ans:=0;
for i:=1 to n do
begin
f[i]:=0;
for j:=0 to i-1 do
if (j=0)or((j<>0)and(f[j]<>0)) then
begin
m:=dis(i,j);
if ( m<=s*(app[i].time-app[j].time) )and( f[j]+1>f[i] )
then f[i]:=f[j]+1;
end;
if f[i]>ans then ans:=f[i];
end;
write(ans);
end.
相關文章
- 【SSL】2128可可摘蘋果蘋果
- 伺服器配置ssl證書支援蘋果ATS方法 – HTTPS SSL 教程伺服器蘋果HTTP
- lgP1637 三元上升子序列
- P1637 三元上升子序列
- gotofail:蘋果 SSL/TLS 重大安全漏洞的細節GoAI蘋果TLS
- 蘋果釋出 OS X Mavericks 10.9.2,修復 SSL 安全漏洞蘋果
- kafka ssl sasl_ssl 配置Kafka
- ssl
- Vesta 安裝SSL – HTTPS SSL 教程HTTP
- SSL,TLSTLS
- [SSL/TLS] SSL/TLS協議綜合總結TLS協議
- SSL證書格式轉換 – HTTPS SSL 教程HTTP
- SSL證書轉PEM格式 – HTTPS SSL 教程HTTP
- SSL/TLS協議安全系列:SSL/TLS概述TLS協議
- Nginx的SSL配置優化 – HTTPS SSL 教程Nginx優化HTTP
- SSL - SSLHandshakeException: Unrecognized SSL message, plaintext connection?ExceptionZedAI
- SSL壓力測試工具THC-SSL-DOS
- Apache SSL伺服器配置SSL詳解(轉)Apache伺服器
- SSL證書安裝指引教程 – HTTPS SSL 教程HTTP
- phpStudy安裝ssl證照 – HTTPS SSL 教程PHPHTTP
- SSL證書申請問題 – HTTPS SSL 教程HTTP
- Tomcat 安裝SSL證書 – HTTPS SSL 教程TomcatHTTP
- SSL基礎知識及Nginx/Tomcat配置SSLNginxTomcat
- [SSL]SSL演算法庫的理解與測試演算法
- SSL錯誤ssl connect error 35的解決方案Error
- 如何區分SSL證書和國密SSL證書
- NGINX配置SSL支援Nginx
- 完全吃透 TLS/SSLTLS
- ssl 生成證書
- SSL certificate chainsAI
- weblogic配置SSLWeb
- [HTTPS]SSL/TLSHTTPTLS
- rabbitmq開啟sslMQ
- 如何申請SSL證書以及SSL證書的費用
- 免費SSL證書Let's Encrypt的替代:SSL.com
- 解決Python找不到ssl模組問題 No module named _sslPython
- error:14090086:SSL routines:ssl3_get_server_certificateErrorServer
- ssl證書下載與安裝 – 如何下載ssl證書