《新手的DOTA》解题报告 本文关键词:解题,新手,报告,DOTA
《新手的DOTA》解题报告 本文简介:作者声明:当动态规划维数进一步增大或不定时,标准解答方法为最大流。新手的DOTABysx349[题目背景]DOTA是DefenseoftheAncients的缩写,是一个基于魔兽争霸的多人实时对战自定义地图,可以支持10个人同时连线游戏。DOTA以对立的两个小队展开对战,最多为5v5。每个玩家仅需要
《新手的DOTA》解题报告 本文内容:
作者声明:
当动态规划维数进一步增大或不定时,标准解答方法为最大流。
新手的DOTA
By
sx349
[题目背景]
DOTA是Defense
of
the
Ancients的缩写,是一个基于魔兽争霸的多人实时对战自定义地图,可以支持10个人同时连线游戏。DOTA以对立的两个小队展开对战,最多为5v5。每个玩家仅需要选择一个英雄,并通过控制该英雄来摧毁对方小队所守护的主要建筑(远古遗迹),以取得最终胜利。
[题目描述]
A君是暴雪公司的忠实FANS,也算是个war3的老手了,自从接触到了DOTA之后,感觉这更适合自己这样的微操狂人。于是,A君拉上了四个死党,也开始接触DOTA了。
既然是新手,首先就是要熟悉一下界面、英雄……等等。在经过一番恶补之后,A君率先出师,随后大家也纷纷学成。接下来,就要进行实战演练拉。
五个新手立刻进入游戏,很不幸,他们下载了一张非AI版地图(这也是很多新手遇到的尴尬)。作为这个小团队的领导者,A君决定,先来一局5V0(五英雄对零英雄),进行一次试练。
在整张地图上不仅有对方一拨拨的小兵,还有很多的野外中立兵。五个新手经过讨论,决定分别找出一条从自己老家(坐标为1,1)通往敌方老家(坐标为N,N)的路,一波RUSH直接结束战斗。显然,敌方老家是很难打得(尤其是有强大的通灵塔守护)。所以,他们希望英雄在路上能够尽可能多地MF,尽可能的练到更高等级。
假设我们已经知道了整张地图的大小N以及所有兵力配置(只是开了一下全地图可见……),五个英雄依次出发,每一次向右或向下移动一格,直到到达敌方的远古遗迹。如果某个地点已经被到达过,那么到达这一地点的英雄必然会杀死所有的处于该地点的单位,而且不再刷新。当然,由于我们的英雄等级都不会太高,所以每一格中的单位数量也不会超过10000个,不然的话……
A君想知道,他们这一波RUSH最多能解决掉多少单位?
[输入格式]
第一行是一个整数N,表示整张地图(正方形)的边长。
第二到N+1行,每行有N个数字,表示地图中每个点的兵力配置。
[输出格式]
输出一个整数S,表示最多能解决掉的单位。
[输入样例1]
3
1
2
3
2
3
4
3
4
5
[输出样例1]
27
//所有的单位都被解决了
[输入样例2]
6
2
5
6
7
9
1
6
4
8
6
8
4
1
6
9
8
4
8
1
6
8
4
1
6
9
8
7
4
6
3
8
4
1
0
3
1
[输出样例2]
181
//除了右上角的一个单位以外全部解决了
[数据范围]
对于50%的数据,有0x[i-1]时,x[i]必然与前i-1个X值不同,此时map[x[i],k+1-x[i]]也会被经过。将所有经过的点的单位数相加,即为compare函数的值。
到此为止,就是本道题核心算法的框架结构。
[程序清单]
program
dota;
const
maxn=10;
var
f:array[12*maxn-1,0maxn,0maxn,0maxn,0maxn,0maxn]
of
integer;
i,j,k,x1,x2,x3,x4,x5,n:longint;
dx:array[132,15]
of
integer;
map:array[1maxn,1maxn]
of
integer;
procedure
compare(k,x1,x2,x3,x4,x5:longint);
var
x:array[15]
of
longint;
i,j,t:longint;
begin
x[1]:=x1;x[2]:=x2;x[3]:=x3;x[4]:=x4;x[5]:=x5;
for
i:=1
to
4
do
for
j:=i+1
to
5
do
if
x[i]>x[j]
then
begin
t:=x[i];
x[i]:=x[j];
x[j]:=t;
end;
inc(f[k,x1,x2,x3,x4,x5],map[x[1],k+1-x[1]]);
for
i:=2
to
5
do
if
x[i]x[i-1]
then
inc(f[k,x1,x2,x3,x4,x5],map[x[i],k+1-x[i]]);
end;
begin
read(n);
for
i:=1
to
n
do
for
j:=1
to
n
do
read(map[i,j]);
k:=0;
for
x1:=0
to
1
do
for
x2:=0
to
1
do
for
x3:=0
to
1
do
for
x4:=0
to
1
do
for
x5:=0
to
1
do
begin
inc(k);
dx[k,1]:=x1;
dx[k,2]:=x2;
dx[k,3]:=x3;
dx[k,4]:=x4;
dx[k,5]:=x5;
end;
f[1,1,1,1,1,1]:=map[1,1];
for
i:=2
to
n
do
for
x1:=1
to
i
do
for
x2:=1
to
i
do
for
x3:=1
to
i
do
for
x4:=1
to
i
do
for
x5:=1
to
i
do
begin
f[i,x1,x2,x3,x4,x5]:=0;
for
j:=1
to
k
do
if
f[i-1,x1-dx[j,1],x2-dx[j,2],x3-dx[j,3],x4-dx[j,4],x5-dx[j,5]]>f[i,x1,x2,x3,x4,x5]
then
f[i,x1,x2,x3,x4,x5]:=f[i-1,x1-dx[j,1],x2-dx[j,2],x3-dx[j,3],x4-dx[j,4],x5-dx[j,5]];
compare(i,x1,x2,x3,x4,x5);
end;
for
i:=n+1
to
2*n-1
do
for
x1:=i-n+1
to
n
do
for
x2:=i-n+1
to
n
do
for
x3:=i-n+1
to
n
do
for
x4:=i-n+1
to
n
do
for
x5:=i-n+1
to
n
do
begin
f[i,x1,x2,x3,x4,x5]:=0;
for
j:=1
to
k
do
if
f[i-1,x1-dx[j,1],x2-dx[j,2],x3-dx[j,3],x4-dx[j,4],x5-dx[j,5]]>f[i,x1,x2,x3,x4,x5]
then
f[i,x1,x2,x3,x4,x5]:=f[i-1,x1-dx[j,1],x2-dx[j,2],x3-dx[j,3],x4-dx[j,4],x5-dx[j,5]];
compare(i,x1,x2,x3,x4,x5);
end;
writeln(f[2*n-1,n,n,n,n,n]);
end.
[数据目的]
数据1、2:样例;
数据3~5:N小于等于6的数据。在这种情况下,可以采用非动态规划形式求解:当N小于等于5时,输出所有单位的和;当N等于6时,输出所有单位的和减去对角线上最小的一格。
数据6~10:N在7到10之间的数据。在这种情况下,应使用动态规划做法或搜索法,否则有可能得不到最优解。尤其是N较大时,搜索法可能也会超时,应选择动态规划来做。
[心得体会]
这道题的难度较低,只要从“方格取数”中借鉴一下即可。从“方格取数”这一经典问题出发,我们还可以进行以下几方面的修改:
(1)
数字随着取数的过程不断变化或移动(按一定规律);
(2)
取数的进程更多(大于五甚至更多);
(3)
变二维至三维甚至多维,增加取数的范围;
(4)
设置障碍,不允许经过此类方格(类似于“马拦过河卒”);
(5)
起点和终点不定;
(6)
方格内数字有负数;
(7)
取数方向考虑四个方向甚至多个方向。
这些修改,可以只有一项,同时也可以叠加修改,对于修改过后的问题,题目类型也会随之改变,算法将会有很大变化,由于动态规划要满足无后效性和最优子结构原则,所以修改过后的题目不一定适用动态规划算法(如选择修改中的(1)、(7)等),而可能转而选择搜索来求最优解。对于这些题目,就有待进一步的研究了。
针对“方格取数”,在网上流传有使用网络流解题的说法,但并没有见到实现的程序,所以不敢多言。但可以看出,进行上述修改后,动态规划已经不能满足解题需要了,而其他一些较为高级的求最优解的方法可能正是解这类题的希望所在。
2008年9月
篇2:范本桥总结圆锥曲线的解题全面方法
范本桥总结圆锥曲线的解题全面方法 本文关键词:圆锥曲线,解题,方法,范本
范本桥总结圆锥曲线的解题全面方法 本文简介:高中数学圆锥曲线解答题解法面面观汇编:范本桥圆锥曲线解答题中的十一题型:几乎全面版题型一:数形结合确定直线和圆锥曲线的位置关系题型二:弦的垂直平分线问题题型三:动弦过定点的问题题型四:过已知曲线上定点的弦的问题题型五:向量问题题型六:面积问题题型七:弦或弦长为定值、最值问题问题八:直线问题问题九:对
范本桥总结圆锥曲线的解题全面方法 本文内容:
高中数学圆锥曲线解答题解法面面观
汇编:范本桥
圆锥曲线解答题中的十一题型:几乎全面版
题型一:数形结合确定直线和圆锥曲线的位置关系
题型二:弦的垂直平分线问题
题型三:动弦过定点的问题
题型四:过已知曲线上定点的弦的问题
题型五:向量问题
题型六:面积问题
题型七:弦或弦长为定值、最值问题
问题八:直线问题
问题九:对称问题
问题十、存在性问题:(存在点,存在直线y=kx+m,存在实数,存在图形:三角形(等比、等腰、直角),四边形(矩形、菱形、正方形),圆)
题型一:数形结合确定直线和圆锥曲线的位置关系(简单题型未总结)
题型二:弦的垂直平分线问题
例题1、过点T(-1,0)作直线与曲线N
:交于A、B两点,在x轴上是否存在一点E(,0),使得是等边三角形,若存在,求出;若不存在,请说明理由。
解:依题意知,直线的斜率存在,且不等于0。
设直线,,,。
由消y整理,得
①
由直线和抛物线交于两点,得
即
②
由韦达定理,得:。则线段AB的中点为。
线段的垂直平分线方程为:
令y=0,得,则
为正三角形,到直线AB的距离d为。
解得满足②式此时。
【涉及到弦的垂直平分线问题】
这种问题主要是需要用到弦AB的垂直平分线L的方程,往往是利用点差或者韦达定理产生弦AB的中点坐标M,结合弦AB与它的垂直平分线L的斜率互为负倒数,写出弦的垂直平分线L的方程,然后解决相关问题,比如:求L在x轴y轴上的截距的取值范围,求L过某定点等等。有时候题目的条件比较隐蔽,要分析后才能判定是有关弦AB的中点问题,比如:弦与某定点D构成以D为顶点的等腰三角形(即D在AB的垂直平分线上)、曲线上存在两点AB关于直线m对称等等。
例题分析1:已知抛物线y=-x2+3上存在关于直线x+y=0对称的相异两点A、B,则|AB|等于
解:设直线的方程为,由,进而可求出的中点,又由在直线上可求出,∴,由弦长公式可求出.
题型三:动弦过定点的问题
例题2、已知椭圆C:的离心率为,且在x轴上的顶点分别为A1(-2,0),A2(2,0)。
(I)求椭圆的方程;
(II)若直线与x轴交于点T,点P为直线上异于点T的任一点,直线PA1,PA2分别与椭圆交于M、N点,试问直线MN是否通过椭圆的焦点?并证明你的结论
解:(I)由已知椭圆C的离心率,,则得。从而椭圆的方程为
(II)设,,直线的斜率为,则直线的方程为,由消y整理得是方程的两个根,则,,即点M的坐标为,
同理,设直线A2N的斜率为k2,则得点N的坐标为
,直线MN的方程为:,
令y=0,得,将点M、N的坐标代入,化简后得:
又,椭圆的焦点为,即
故当时,MN过椭圆的焦点。
题型四:过已知曲线上定点的弦的问题
例题4、已知点A、B、C是椭圆E:
上的三点,其中点A是椭圆的右顶点,直线BC过椭圆的中心O,且,,如图。(I)求点C的坐标及椭圆E的方程;(II)若椭圆E上存在两点P、Q,使得直线PC与直线QC关于直线对称,求直线PQ的斜率。
解:(I)
,且BC过椭圆的中心O
又点C的坐标为。
A是椭圆的右顶点,,则椭圆方程为:
将点C代入方程,得,椭圆E的方程为
(II)
直线PC与直线QC关于直线对称,
设直线PC的斜率为,则直线QC的斜率为,从而直线PC的方程为:
,即,由消y,整理得:
是方程的一个根,
即同理可得:
==
=
则直线PQ的斜率为定值。
题型五:共线向量问题
1:如图所示,已知圆为圆上一动点,点P在AM上,点N在CM上,且满足的轨迹为曲线E.I)求曲线E的方程;II)若过定点F(0,2)的直线交曲线E于不同的两点G、H(点G在点F、H之间),且满足,求的取值范围.
解:(1)∴NP为AM的垂直平分线,∴|NA|=|NM|
又∴动点N的轨迹是以点
C(-1,0),A(1,0)为焦点的椭圆.且椭圆长轴长为
焦距2c=2.
∴曲线E的方程为
(2)当直线GH斜率存在时,设直线GH方程为
得设
,
又当直线GH斜率不存在,方程为
2:已知椭圆C的中心在坐标原点,焦点在轴上,它的一个顶点恰好是抛物线的焦点,离心率为.(1)求椭圆C
的标准方程;(2)过椭圆C
的右焦点作直线交椭圆C于、两点,交轴于点,若,
,求证:.
解:设椭圆C的方程为
(>>)抛物线方程化为,其焦点为,
则椭圆C的一个顶点为,即
由,∴,椭圆C的方程为
(2)证明:右焦点,设,显然直线的斜率存在,设直线的方程为
,代入方程
并整理,得∴,
又,,,,
而
,
,即,
∴,,所以
3、已知△OFQ的面积S=2,且。设以O为中心,F为焦点的双曲线经过Q,
,当取得最小值时,求此双曲线方程。
解:设双曲线方程为,
Q(x0,y0)。
,
S△OFQ=,∴。
=c(x0-c)=。
当且仅当,
所以。
类型1——求待定字母的值
例1设双曲线C:与直线L:x+y=1相交于两个不同的点A、B,直线L与y轴交于点P,且PA=,求的值
思路:设A、B两点的坐标,将向量表达式转化为坐标表达式,再利用韦达定理,通过解方程组求a的值。
解:设A(x1,y1),B(x2,y2),P(0,1)
∵PA=
∴x1=.
联立消去y并整理得,(1-a2)x2+2a2x-2a2=0(*)
∵A、B是不同的两点,∴
∴00)过M(2,)
,N(,1)两点,O为坐标原点,
(I)求椭圆E的方程;
(II)是否存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且?若存在,写出该圆的方程,并求|AB
|的取值范围,若不存在说明理由。
解:(1)因为椭圆E:
(a,b>0)过M(2,)
,N(,1)两点,所以解得所以椭圆E的方程为
(2)假设存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且,设该圆的切线方程为解方程组得,即,则△=,即,要使,需使,即,所以,所以又,所以,所以,即或,因为直线为圆心在原点的圆的一条切线,所以圆的半径为,,,所求的圆为,此时圆的切线都满足或,而当切线的斜率不存在时切线为与椭圆的两个交点为或满足,综上,存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且.
因为,所以,,①当时
因为所以,所以,所以当且仅当时取”=”.
②
当时,.
③
当AB的斜率不存在时,两个交点为或,所以此时,综上,|AB
|的取值范围为即:
2、在平面直角坐标系中,经过点且斜率为的直线与椭圆有两个不同的交点和.(I)求的取值范围;(II)设椭圆与轴正半轴、轴正半轴的交点分别为,是否存在常数,使得向量与共线?如果存在,求值;如果不存在,请说明理由.
解:(Ⅰ)由已知条件,直线的方程为,代入椭圆方程得.
整理得①直线与椭圆有两个不同的交点和等价于,解得或.即的取值范围为.
(Ⅱ)设,则,由方程①,.
②
又.③而.所以与共线等价于,将②③代入上式,解得.由(Ⅰ)知或,故没有符合题意的常数.
3、设、分别是椭圆的左、右焦点.
(Ⅰ)若P是该椭圆上的一个动点,求的最大值和最小值;
(Ⅱ)是否存在过点A(5,0)的直线l与椭圆交于不同的两点C、D,使得|F2C|=|F2D|?若存在,求直线l的方程;若不存在,请说明理由.
解:易知,设P(x,y),
则,
,
,即点P为椭圆短轴端点时,有最小值3;
当,即点P为椭圆长轴端点时,有最大值4
(Ⅱ)假设存在满足条件的直线l易知点A(5,0)在椭圆的外部,当直线l的斜率不存在时,直线l与椭圆无交点,所在直线l斜率存在,设为k,直线l的方程为
由方程组
依题意
当时,设交点C,CD的中点为R,则
又|F2C|=|F2D|
∴20k2=20k2-4,而20k2=20k2-4不成立,
所以不存在直线,使得|F2C|=|F2D|综上所述,不存在直线l,使得|F2C|=|F2D|
4、椭圆G:的两个焦点为F1、F2,短轴两端点B1、B2,已知F1、F2、B1、B2四点共圆,且点N(0,3)到椭圆上的点最远距离为(1)求此时椭圆G的方程;(2)设斜率为k(k≠0)的直线m与椭圆G相交于不同的两点E、F,Q为EF的中点,问E、F两点能否关于过点P(0,)、Q的直线对称?若能,求出k的取值范围;若不能,请说明理由.
解:(1)根据椭圆的几何性质,线段F1F2与线段B1B2互相垂直平分,故椭圆中心即为该四点外接圆的圆心故该椭圆中即椭圆方程可为,H(x,y)为椭圆上一点,则
,,则有最大值,(舍去),,∴所求椭圆方程为
(2)设,则由
两式相减得……③
又直线PQ⊥直线m
∴直线PQ方程为将点Q()代入上式得,④
由③④得Q(),Q点必在椭圆内部,
由此得故当时,E、F两点关于点P、Q的直线对称
5、已知椭圆的离心率为,过右焦点F的直线与相交于、两点,当的斜率为1时,坐标原点到的距离为
(I)求,的值;
(II)上是否存在点P,使得当绕F转到某一位置时,有成立?若存在,求出所有的P的坐标与的方程;若不存在,说明理由。
解:(Ⅰ)设
当的斜率为1时,其方程为到的距离为
,故
,
,
由
,得
,=
(Ⅱ)C上存在点,使得当绕转到某一位置时,有成立。
由
(Ⅰ)知椭圆C的方程为+=6.
设
(ⅰ)
假设上存在点P,且有成立,则,
,整理得
故
①
将
②
于是,=,,
代入①解得,,此时
于是=,
即
因此,
当时,,
;
当时,,
。
(ⅱ)当垂直于轴时,由知,C上不存在点P使成立。
综上,C上存在点使成立,此时的方程为.
6、已知直线经过椭圆
的左顶点A和上顶点D,椭圆的右顶点为,点是椭圆上位于轴上方的动点,直线与直线分别交于两点。
(I)求椭圆的方程;
(Ⅱ)求线段MN的长度的最小值;
(Ⅲ)当线段MN的长度最小时,在椭圆上是否存在这样的点,使得的面积为?若存在,确定点的个数,若不存在,说明理由
(I)由已知得,椭圆的左顶点为上顶点为
故椭圆的方程为
(Ⅱ)直线AS的斜率显然存在,且,故可设直线的方程为,从而
由得0
设则得,从而
即
又,由得
故
又
,当且仅当,即时等号成立
时,线段的长度取最小值
(Ⅲ)由(Ⅱ)可知,当取最小值时,
此时的方程为
要使椭圆上存在点,使得的面积等于,只须到直线的距离等于,所以在平行于且与距离等于的直线上。
设直线,则由解得或
7、已知双曲线的左、右焦点分别为,,过点的动直线与双曲线相交于两点.
(I)若动点满足(其中为坐标原点),求点的轨迹方程;
(II)在轴上是否存在定点,使·为常数?若存在,求出点的坐标;若不存在,请说明理由.
解:由条件知,,设,.
解法一:(I)设,则,,
,由得
即
于是的中点坐标为.
当不与轴垂直时,,即.
又因为两点在双曲线上,所以,,两式相减得
,即.
将代入上式,化简得.
当与轴垂直时,,求得,也满足上述方程.
所以点的轨迹方程是.
(II)假设在轴上存在定点,使为常数.
当不与轴垂直时,设直线的方程是.
代入有.
则是上述方程的两个实根,所以,,
于是
.
因为是与无关的常数,所以,即,此时=.
当与轴垂直时,点的坐标可分别设为,,
此时.
故在轴上存在定点,使为常数.
8、在平面直角坐标系中,已知圆心在第二象限、半径为的圆与直线相切于坐标原点.椭圆与圆的一个交点到椭圆两焦点的距离之和为.
(1)求圆的方程;
(2)试探究圆上是否存在异于原点的点,使到椭圆右焦点的距离等于线段的长.若存在,请求出点的坐标;若不存在,请说明理由.
解:
(1)设圆心坐标为(m,n)(m0),则该圆的方程为(x-m)2+(y-n)2=8已知该圆与直线y=x相切,那么圆心到该直线的距离等于圆的半径,则
=2
即=4
①
又圆与直线切于原点,将点(0,0)代入得
,m2+n2=8
②
联立方程①和②组成方程组解得,
故圆的方程为(x+2)2+(y-2)2=8
(2)=5,∴a2=25,则椭圆的方程为
其焦距c==4,右焦点为(4,0),那么=4。
要探求是否存在异于原点的点Q,使得该点到右焦点F的距离等于的长度4,我们可以转化为探求以右焦点F为顶点,半径为4的圆(x─4)2+y2=8与(1)所求的圆的交点数。
通过联立两圆的方程解得x=,y=
即存在异于原点的点Q(,),使得该点到右焦点F的距离等于的长。
9、设椭圆E:
(a,b>0)过M(2,)
,N(,1)两点,O为坐标原点,
(I)求椭圆E的方程;
(II)是否存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且?若存在,写出该圆的方程,并求|AB
|的取值范围,若不存在说明理由。
解:(1)因为椭圆E:
(a,b>0)过M(2,)
,N(,1)两点,所以解得所以椭圆E的方程为
(2)假设存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且,设该圆的切线方程为解方程组得,即,则△=,即,要使,需使,即,所以,所以又,所以,所以,即或,因为直线为圆心在原点的圆的一条切线,所以圆的半径为,,,
所求的圆为,此时圆的切线都满足或,而当切线的斜率不存在时切线为与椭圆的两个交点为或满足,综上,存在圆心在原点的圆,使得该圆的任意一条切线与椭圆E恒有两个交点A,B,且.
39
篇3:《花生采摘》解题报告
《花生采摘》解题报告 本文关键词:采摘,解题,花生,报告
《花生采摘》解题报告 本文简介:《花生采摘》解题报告Bysx349【摘要】核心算法思想:贪心主要数据结构:其他辅助知识:时间复杂度:空间复杂度:【题目大意】给定一个非空矩阵,每次都从中选择一个最大值并将其从矩阵中排除,将这些取出的数排序后计算其花费(相邻两数的花费是其在矩阵之间的曼哈顿距离),求在给定最大花费下,能取到的最大值的最
《花生采摘》解题报告 本文内容:
《花生采摘》解题报告
By
sx349
【摘要】
核心算法思想:贪心
主要数据结构:
其他辅助知识:
时间复杂度:
空间复杂度:
【题目大意】
给定一个非空矩阵,每次都从中选择一个最大值并将其从矩阵中排除,将这些取出的数排序后计算其花费(相邻两数的花费是其在矩阵之间的曼哈顿距离),求在给定最大花费下,能取到的最大值的最大总和。
【算法分析】
文中说道:“你先找出花生最多的植株,去采摘它的花生;然后再找出剩下的植株里花生最多的,去采摘它的花生;依此类推,不过你一定要在我限定的时间内回到路边。”
根据这一句话,我们直接就可以得出,这道题应该采用贪心的算法。
因此,我们先对数据进行从大到小的排序,然后每次都取其中的最大值。因为必须在规定的时间内回到路边,所以在每次取最大值时,首先判断在采摘了这一次之后是否有足够的时间回到路边,即(去采摘目标花生的时间)+(采摘那目标花生所用的1单位时间)+(从目标所在地往第一行的时间)Mid
do
Inc(I);
While
Value[J]J;
If
I0
Then
Begin
Inc(Top);
Value[Top]:=Map[I,J];
X[Top]:=I;Y[Top]:=J;
End;
End;
Sort(1,Top);
K:=K-2;
X[0]:=1;Y[0]:=Y[1];
T:=0;I:=1;Sum:=0;
While
TK
Then
Print(Sum);
Sum:=Sum+Value[I];
T:=T+X[I]-1;
Inc(I);
End;
End.