/ Vijos / 讨论 / 货币 /

关于样例

为什么面值为2的货币能换到两枚货币呢?能解释下样例吗?

3 条评论

  • @ 2009-07-31 12:38:00

    样例没错

    2的话应该是钱数,不是枚数

    2可分为1 0 0 加起来只有1了,所以最好不换

    所以是2

    12可以分为 6 4 3 和为13

  • @ 2009-07-31 12:07:13

    我错了

    刚才我理解错题意了。原来钱数是指能得的货币面值之和。

    可我又出存取非法了。下面是我的程序,谁能告诉我哪里错了。

    Program Money;

    Var

    f: Array[0..10000000]Of LongInt;

    a, ans: Array[0..50]Of LongInt;

    n, i, j: LongInt;

    Function Max(x, y: LongInt): LongInt;

    Begin

    If x > y Then Max := x

    Else Max := y;

    End;

    Begin

    FillChar(f, SizeOf(f), 0);

    FillChar(a, SizeOf(a), 0);

    ReadLn(n);

    For i := 1 To n Do

    Begin

    ReadLn(a[i]);

    For j := a To a[i] Do

    f[j] := Max(j, f[j Div 2] + f[j Div 3] + f[j Div 4]);

    ans[i] := f[a[i]];

    End;

    For i := 1 To n Do WriteLn(ans[i]);

    End.

  • @ 2009-07-31 11:37:29

    ( ⊙ o ⊙ )啊!

    加上他自己呗

  • 1

信息

ID
1599
难度
7
分类
搜索 | 记忆化搜索 点击显示
标签
(无)
递交数
2481
已通过
414
通过率
17%
被复制
4
上传者