题目描述 Description

今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:

设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。

同时,为了帮助选手能够正确理解题意,主持人还举了如下的一个例子:

有一个数字串:312, 当N=3,K=1时会有以下两种分法:

1)  3*12=36

2)  31*2=62

这时,符合题目要求的结果是:31*2=62

现在,请你帮助你的好朋友XZ设计一个程序,求得正确的答案。

输入描述 Input Description

程序的输入共有两行:

第一行共有2个自然数N,K(6≤N≤40,1≤K≤6)

第二行是一个长度为N的数字串。

输出描述 Output Description

结果显示在屏幕上,相对于输入,应输出所求得的最大乘积(一个自然数)。

样例输入 Sample Input

4  2

1231

样例输出 Sample Output

62

题解:a[i,j]表示子串st[i,j]的值,f[i,j]表示前i个数放j个乘号的最大值,f[i,j]=max(f[i-1,j-1]+a[k,i])  j-1<k<i

vara,f:array[0..50,0..50] of int64;n,m,i,j,k:longint;st:string;procedure init;
vari,j:longint;
beginreadln(n,m);readln(st);for i:=1 to n dofor j:=i to n doa[i,j]:=a[i,j-1]*10+ord(st[j])-48;for i:=1 to n dof[i,0]:=a[1,i];
end;function max(a,b:longint):longint;
beginif a>b then exit(a) else exit(b);
end;begininit;for i:=1 to m dofor j:=1 to n dofor k:=1 to j-1 doif k-i>=0 then f[j,i]:=max(f[j,i],f[k,i-1]*a[k+1,j]);writeln(f[n,m]);end.

wikioi1017 乘积最大相关推荐

  1. LeetCode简单题之两个数对之间的最大乘积差

    题目 两个数对 (a, b) 和 (c, d) 之间的 乘积差 定义为 (a * b) - (c * d) . 例如,(5, 6) 和 (2, 7) 之间的乘积差是 (5 * 6) - (2 * 7) ...

  2. hdu2006 求奇数的乘积【C++】

    求奇数的乘积 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  3. 蒟蒻吃药计划-治疗系列 #round 2 合并石子+乘积最大

    1.合并石子 <信息学奥赛一本通>第五版 P371 第三节 T1 我就直接开始讲吧: Warning:这个题目和 合并果子 不一样!不一样!不一样!不一样!不一样!不一样!不一样!不一样! ...

  4. 不相交轮换的乘积怎么求_谁能告诉我 轮换的乘积 怎么做?具体题目是

    展开全部 把轮换的乘积看成变换的乘积就行了,轮换本身就是变换,上式看成Ψ1Ψ2Ψ3,任给一个元素a,显然像为Ψ32313133353236313431303231363533e59b9ee7ad943 ...

  5. leetcode-152 乘积最大子序列

    题目描述: 给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数). 示例 1: 输入: [2,3,-2,4] 输出: 6 解释: 子数组 [2,3] 有最大乘积 6 ...

  6. SDUTOJ 1293 乘积最大的分解(数论)

    乘积最大的分解   思路: 让分解出来的因子有尽可能多的3,剩下的用2补全. 最开始思路错了,WA了好长时间= =! 函数中n == 1的情况应该是不用,经测试数据中没有这组. *注意用 long l ...

  7. LeetCode实战:除自身以外数组的乘积

    背景 为什么你要加入一个技术团队? 如何加入 LSGO 软件技术团队? 我是如何组织"算法刻意练习活动"的? 为什么要求团队的学生们写技术Blog 题目英文 Given an ar ...

  8. 编程——无序数组中找到最大乘积(python)

    题目 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述: 输入共2行,第一行包括一个整数n,表示数组长度 第二行为 ...

  9. D.Digits 思维dp 取log乘积变成加法

    题目链接 题目大意: 就是给你nnn个数和一个数字ddd,问你从这n个数中挑出若干个数,使得这些数的乘积最后的一个数字是d,并且结果是最大的,问你要挑出哪些数字? n∈[1,1e5],ai∈[1,10 ...

最新文章

  1. Java项目:在线拍卖竞价系统(java+SpringBoot+FreeMarker+Mysql+redis)
  2. Deep Learning(深度学习)学习笔记整理系列 一
  3. IOS中UITableView异步加载图片的实现
  4. MySQL order by 是怎么工作的?
  5. 【Ubuntu-Docker】ubuntu16.04(18.04)Docker安装配置与卸载
  6. 【nyoj-456】 邮票分你一半 (dp,0-1背包的中点问题)
  7. cad转dxf格式文件太大_想知道DWG、DWT、DWS和DXF是什么吗?从了解4种CAD图形格式开始吧...
  8. 码农节快乐|一个系统,高效解决复杂事件采集-计算-实时触达
  9. 重要的气质-个性决定命运
  10. mysql geometry 附近的人_mysql中geometry类型的简单使用(搜索附近的人)
  11. 腾讯云加码 IDaaS,加速 SaaS 时代进程
  12. JPA的主键生成策略
  13. 利用FolderSync实现本地FTP备份同步
  14. c++ discards qualifiers
  15. 微信小程序上传图片(预览 删除 限制图片大小、张数)
  16. 杰奇小说站PC端跳转WAP端实现方式
  17. WIN10安装与升级的方法
  18. Android 8.1 DisplayPowerController(五) 自动调节亮度(2)——算法
  19. html银白色,纯CSS打造银色MacBookAir(二)_html/css_WEB-ITnose
  20. 大数据实战|怎样实现大型电商热销榜?

热门文章

  1. 每日互动方毅:数据可用不可拥,让数据价值流转数据不流转|爱分析访谈
  2. 记录RTSP通过FFmpeg+nginx发布成rtmp和http-flv
  3. 常见的http面试问题
  4. jupyter打开后没有自动弹出浏览器的解决方法
  5. gunicorn参数
  6. 为什么云教室比传统的PC教室更受欢迎
  7. 全面解读如何利用百度知道来做产品推广
  8. 【Python数据分析学习笔记Day2】(二)数据采集与操作
  9. 第二款应用 红色警戒2秘籍
  10. shiro详解-shiro史上最全学习笔记