【题目描述】

今年是国际数学联盟确定的“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设计一个程序,求得正确的答案。

【输入】

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

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

【输出】

输出所求得的最大乘积(一个自然数)。

【输入样例】

4 2
1231

【输出样例】

62

【源程序】

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<string>
#include<cstdlib>
#include<queue>
#include<vector>
#define INF 0x3f3f3f3f
#define PI acos(-1.0)
#define N 30
#define MOD 2520
#define E 1e-12
using namespace std;
char a[N];
int f[N][N];
int cut(int left,int right)
{int ans=0;for(int i=left;i<=right;i++){ans*=10;ans+=a[i]-'0';}return ans;
}
int main()
{int n,k;cin>>n>>k;scanf("%s",&a[1]);for(int i=1;i<=n;i++)f[i][0]=cut(1,i);for(int l=2;l<=n;l++)for(int i=1;i<=min(l-1,k);i++)for(int j=i;j<l;j++)f[l][i]=max(f[l][i],f[j][i-1]*cut(j+1,l));cout<<f[n][k]<<endl;return 0;
}

乘积最大(信息学奥赛一本通-T1275)相关推荐

  1. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  2. 信息学奥赛一本通(1098:质因数分解)

    1098:质因数分解 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 33021     通过数: 16969 [题目描述] 已知正整数n是两个不同的质数的乘积,试 ...

  3. 信息学奥赛一本通(2032:【例4.18】分解质因数)

    2032:[例4.18]分解质因数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 582     通过数: 376 [题目描述] 把一个合数分解成若干个质因数乘积 ...

  4. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  5. 信息学奥赛一本通 第五版(C++版)

    信息学奥赛一本通 第五版(C++版)第一部分 C++语言 第一章 C++语言入门 第二节 C++语言程序设计 P15 1. 编写一个能够输出Hello,World!的程序,这个程序常常作为一个初学者接 ...

  6. 信息学奥赛一本通(C++版)NOIP提高组(1820-1829)

    信息学奥赛一本通(C++版)NOIP提高组目录 //1820 [题目描述] 我们可以用这样的方式来表示一个十进制数:将每个阿拉伯数字乘以一个以该数字所 处位置的(值减1)为指数,以10为底数的幂之和的 ...

  7. 信息学奥赛一本通 1209:分数求和 | OpenJudge NOI 1.13 12:分数求和

    [题目链接] ybt 1209:分数求和 OpenJudge NOI 1.13 12:分数求和 [题目考点] 1. 求最大公约数 2. 求最小公倍数 [解题思路] 求最大公约数,可以用辗转相除法.具体 ...

  8. 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划 第一节 动 ...

  9. 信息学奥赛一本通T1447:靶形数独

    信息学奥赛一本通T1447:靶形数独 [题目描述] 小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向Z ...

最新文章

  1. DotNet中几种常用的加密算法
  2. Java中判断两个Date时间段是否有交集的方法
  3. linux集群系列(4) --- LVS之负载均衡集群 --- 持久连接
  4. P3911 最小公倍数之和 (atcoder C - LCMs)(反演)
  5. 洛谷P1938 找工就业
  6. BZOJ2042 : [2009国家集训队]Will的烦恼
  7. Perl学习笔记(二)--标量数据
  8. Kubernetes Jobs - 运行处理任务指南
  9. 2018~2021年版北大中文核心期刊目录(最新第八版)
  10. Linux 中 17 个 tar 命令实用示例
  11. python获取当前工作路径
  12. 服务器usb驱动安装系统安装失败怎么办,usb驱动安装不成功,详细教您usb驱动安装失败的解决方法...
  13. 什么是WEB应用waf防火墙和DDOS高防IP?
  14. 给童鞋萌康康关于代码块(static代码块)的小知识
  15. 解决pycharm中中文列表输出'\xe5\xa4\xa7\xe8\x92\x9c'之类的字符串
  16. 计算净现值和内部报酬率的方法
  17. 信号强度诊断(系统架构)
  18. Reac-18 portal传送门
  19. iOS Objective-C(2014-1-6 20:30、20140114,20140824,20150926、20160106、20160110、20160123)
  20. UI设计中switch开关设计总结

热门文章

  1. 以5个数据库为例,用Python实现数据的提取、转换和加载(ETL)
  2. 技术转管理?这些“坑”你要绕道走
  3. Jeecg-P3 1.0版本发布,JAVA插件开发框架
  4. Java容器 | 基于源码分析Map集合体系
  5. HDR Tone Mapping
  6. 《转》完美解决微信video视频隐藏控件和内联播放问题
  7. Haproxy+Rabbitmq中的问题
  8. leetcode75
  9. sql server中的varchar和Nvarchar有什么区别?
  10. RHEL6.2手动封装rpm源码包安装星际译王