37 条题解
-
0skyhacker LV 7 @ 2009-07-19 19:37:31
不会做呀。。。
-
02009-07-19 13:50:17@
老宋太牛了
-
02009-07-19 16:48:51@
楼下你们都Orz错人了!!!
你们应该膜拜我!!!
我是南京金陵中学的陶文博。你们不会没听说过吧?
楼下的楼下的楼下是假冒的。
-
02009-07-17 22:07:17@
沙茶题留名……
-
02009-07-17 21:04:21@
我果然是见了神牛心就虚阿.
一个普普通通的DP交了10多次.
一定要在NOI之前适应眼前全是大牛名字的情况.
只能说我太沙茶了或者宋神牛太牛了. -
02009-07-18 19:54:04@
-
02009-07-17 19:02:50@
囧.........................................................rz
-
02009-07-20 08:40:55@
汗,当初我也不会做
先去重,针对地点相同,时间不同的作业,保留时间最大的那个(因为交作业是不要时间的,交N份作业和交1份作业消耗时间都为0)
然后F[L,R,0]表示还有L~R的作业未交,当前宋神牛在L-1个地点上
F[L,R,1]表示还有L~R的作业未交,当前宋神牛在R+1个地点上
初始F[1,N,0]:=0;
然后从两边向中间DP
f[l,r,1]:=min(max(f[l,r+1,1]+d[r+2]-d[r+1],t[r+1]),max(f[l,r+1,0]+d[r+1]-d[l-1],t[r+1]));
f[l,r,0]:=min(max(f[l-1,r,1]+d[r+1]-d[l-1],t[l-1]),max(f[l-1,r,0]+d[l-1]-d[l-2],t[l-1]));
最后枚举一下最后交的作业位置
ans:=min(ans,max(f+d[i]-d,t[i])+abs(d[i]-k));
ans:=min(ans,max(f+d-d[i],t[i])+abs(d[i]-k)); -
02009-07-17 14:45:29@
Orz 宋神牛!NOI 2009满分的神牛!
-
02009-07-17 14:37:44@
底下的都是神牛……某菜留名……飘过……此楼勿删,留作纪念
-
02009-07-17 14:06:09@
orz宋神牛
-
02009-07-17 13:14:13@
Orz curimit 牛 !!!
-
02009-07-17 13:06:04@
来膜拜宋神牛
-
02009-07-17 11:30:50@
Orz宋神牛
-
02009-07-17 09:34:43@
时间和地点换错了啊
-
02009-07-20 11:10:12@
膜拜众神牛
-
02009-07-19 13:51:29@
终于AC了!!!!!!!!!
引用陶文博神牛(不是楼下下的那个假的,是真的!)的原话:
如果有三个点i,j,k,i