99 条题解
-
0zhangyq987 LV 8 @ 2009-08-15 12:20:39
var
n,m,i,j,p:integer;
min,max:longint;
a:packed array[1..100]of integer;
fmin:packed array[1..100,1..100,0..9]of longint;
fmax:packed array[1..100,1..100,0..9]of longint;
function js(l,r:integer):integer;
var
i:integer;
sum:int64;
begin
sum:=0;
for i:=l to r do sum:=sum+a[i];
if sum=p)and((r-i-1)>=(k-1-p)) then
if findmin(l,i,p)*findmin(i+1,r,k-1-p)=p)and((r-i-1)>=(k-1-p)) then
if findmax(l,i,p)*findmax(i+1,r,k-1-p)>now then
now:=findmax(l,i,p)*findmax(i+1,r,k-1-p);
end;
fmax[l,r,k]:=now;
findmax:=fmax[l,r,k];
end;
end;
end;
begin
readln(n,m);
for i:=1 to n do
begin
readln(a[i]);
a:=a[i];
end;
for i:=1 to 2*n do
for j:=1 to 2*n do
for p:=0 to m do
begin
fmin:=-1;
fmax:=-1;
end;
min:=maxlongint;max:=0;
for i:=1 to n do
begin
if findmin(i,i+n-1,m-1)max then max:=findmax(i,i+n-1,m-1);
end;
writeln(min);
write(max);
end. -
02009-08-13 14:56:19@
longint就ok了。。。9的9次方也在范围内
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms -
02009-08-06 11:00:12@
话说本菜最近思维极其迟钝……
采用最笨的方法秒了…………
程序极其繁琐,写了55行 -
02009-08-05 21:34:37@
普及组的我还叫了3次,悲剧了,数据太多了,我就不发了,想要的可以CALL
-
02009-07-30 17:09:04@
一次AC。。。。水。。。
不需要高精度
int64就够3维的DP
-
02009-07-19 15:17:02@
楼下B哥,吹牛果然厉害!!!
-
02009-06-08 09:48:27@
满水的
方程好想= =
重点是处理环状
我是单独枚举最后一刀的位置把环状搞成链状
比如
1 2 3 5 7 4这样一个环
枚举切完最后一刀所有的链状情况就是
1 2 3 5 7 4
2 3 5 7 4 1
3 5 7 4 1 2
5 7 4 1 2 3
7 4 1 2 3 5
4 1 2 3 5 7
然后每种情况下
方程处理除最后一刀外剩下的(m-1)刀的切法
f:=max(f*f[0,l+1,k]); -
02009-05-25 16:43:42@
第200题~纪念一下..
-
02009-05-16 15:05:46@
真郁闷,我交了十次,我开longint输出答案比正确答案长,开成int64,有一个点超时,结果是调用函数出了问题,真晕
-
02009-05-06 12:24:19@
编译通过...
├ 测试数据 01:答案错误...程序输出比正确答案长
├ 测试数据 02:答案错误...程序输出比正确答案长
├ 测试数据 03:答案错误...程序输出比正确答案长
├ 测试数据 04:答案错误...程序输出比正确答案长
├ 测试数据 05:答案错误...程序输出比正确答案长
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:0 有效耗时:0msWhy??
-
02009-04-08 12:28:32@
DDPP
-
02009-03-29 23:29:03@
我直接看傻了
(a mod b)中 若a0}
大家注意了! -
02009-03-29 16:41:46@
调了半天才发现,有的状态根本不能到达!!!!
注意!!!
WA了n次... -
02009-03-21 09:24:02@
一楼的fz1993322
1 FF[I,J,P]:=MAX(FF[I,K,P-1]+HH[K+1,J] );
2 GG[I,J,P]:=MIN(GG[I,K,P-1]+HH[K+1,J] );
“P-1]+HH”中的“+”MS要改成“*”吧? -
02009-01-16 14:49:33@
如果各位象如下情况
"程序输出比正确答案长"
请注意
1:注意变量 (LONGINT 就够了,INT64 可能就会"程序输出比正确答案长"----我的经验);
2:强烈注意 "取模" 最好用数组 (HH[I,J]:=(HH[I,J-1]+A[I]+100000000)MOD 10;
3:能量项链的模式
DP方程:
1 FF[I,J,P]:=MAX(FF[I,K,P-1]+HH[K+1,J] );
2 GG[I,J,P]:=MIN(GG[I,K,P-1]+HH[K+1,J] );
I:从I个起 J:到第J个 P:分成几部分 K:I〈=K〈=J -
02008-11-10 23:06:39@
一次过。
so easy.That's impossible. -
02008-11-07 09:43:07@
石子归并类DP
FB:=MAX{FB*S[JJ+1,J]}
FS:=MIN{FS*S[JJ+1,J]}
I -
02008-11-06 23:45:26@
可惜没有秒杀
都怪dolphin.........
第三个点9ms
我是第888个通过的^_^!!!!!!!
先把数组复制一遍
直接开个三维数组记录状态
分别是起始位置,第几个部分,已经覆盖了多少个,然后就是dp..... -
02008-11-05 19:28:54@
1次AC。。。感觉终于回来了 前几天总是每道题莫名奇妙的WA上1-2个点
-
02008-11-02 21:12:36@
我终于无语了
这么一题我居然提交4次
两次暴longint 一次没考虑m=1
话说这是普及组的题啊 ~