题解

9 条题解

  • 0
    @ 2013-11-05 19:21:55

    第3个点错什么情况?

  • 0
    @ 2013-04-05 14:47:30

    题目要求说写题目可以按照任意顺序来写,这个必须注意!!!
    不明白的朋友可以看看这个数据:
    3 0 10
    11 1 0
    如果按照顺序来写作业,那么乱写第一个,认真写第二个,第三个认真写(随意写也无所谓),那么得到的怒气值就是-10。假如先写第二个作业,怒气值为-1,接着认真写第一个作业,那么怒气值变为10,所以最大怒气值得出的是10。
    解决这个问题的方法就是按照作业的难度排序(从小到大),接着进行DP。

  • 0
    @ 2012-11-21 17:17:16

    居然不是沙发

  • 0
    @ 2012-11-07 15:44:23

    装箱问题的变形

    f表示1到i这i道题有没有可能构成j的怒气值

    方程为

    f = f or f

    最后找答案的时候从maxanger向下逐个找 找到第一个f[n,i]=true就可以输出 找到0还没有就是Happy

    直接可以裸过

    90分错第一个点的 检查一下你Happy的拼写 注意首字母要大写

  • 0
    @ 2012-11-07 14:25:09

    要判上一道题的怒气是不是大于maxanger啊。

    判了反而错了 不判才能AC。

    第三个点的数据怎么回事。

  • 0
    @ 2012-10-28 20:50:03

    不影响 我的失误 向各位抱歉 打字时没有注意

  • 0
    @ 2012-10-28 12:06:44

    影响解题么?

    标准算法是不是背包

  • 0
    @ 2012-10-27 18:24:59

    题目有不少字打错了.

  • -2
    @ 2013-11-05 19:23:11

    var
    f:array[0..100,-2000..2000]of boolean;
    a:array[1..1000]of longint;
    b,c,d,e,g,h,i,j,k,l,m,n:longint;
    begin
    read(n,k,m);
    for i:=1 to n do read(a[i]);
    f[0,k]:=true;

    for i:=1 to n do
    for j:=-m to m do
    if f[i-1,j]then
    begin
    if j+a[i]<=m then f[i,j+a[i]]:=true;
    if j-a[i]>=-m then f[i,j-a[i]]:=true;
    end;
    for i:=m downto 0 do
    if f[n,i]then break;
    if i>0 then writeln(i) else writeln('Happy');
    end.

  • 1

信息

ID
1751
难度
7
分类
动态规划 点击显示
标签
递交数
249
已通过
42
通过率
17%
被复制
3
上传者