巧克力棒(记忆化搜索)

巧克力棒
总时间限制: 2000ms 内存限制: 65536kB
描述
有一个n*m(1≤n,m≤30)的矩形巧克力,每一次都可以横向或者纵向切,且每次切的花费为所切边长的平方。问最后得到面积为k个单位巧克力(k≤=min(n*m,50))的最小花费是多少?
举例:有一个2*3的矩形巧克力,你可以横向切,就可以得到2个1*3的巧克力,花费为32=9;你也可以纵向切,就可以得到1个2*1的巧克力和1个2*2的巧克力,花费为22=4。
输入
第一行一个整数t,代表样例个数。
接下来的t行,每一行包括三个整数n,m,k,分别代表巧克力的尺寸,想得到的巧克力尺寸。
输出
一个整数,代表每一行输入的最小花费。
样例输入

4
2 2 1
2 2 3
2 2 2
2 2 4

样例输示

5
5
4
1

【样例1解释】
对于样例1中的第一组操作(2 2 1)
需要进行如下操作:
1、将2*2的巧克力切成2*1,花费是2^2=4
2、将2*1的巧克力切成1*1,花费是1^2=1
最小花费为:22+12&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值