矩阵连乘最优结合 动态规划求解

 

如果从控制台输入矩阵尺寸的话,可以输入第一个矩阵的行数和各矩阵的列数。直接使用这个序列存储矩阵尺寸。

 1 #include iostream 
 2 #include vector 
 3 #include algorithm 
 4 #include limits.h 
 5 #include string 
 7 using namespace std;
 9 int* uncertaininput;
 11 //计算矩阵的分割方案
 12 int calculate_m1 {
 14 int span;//起止点间隔距离,表示跨度 最大跨度比总的矩阵数小1
 15 int start;//起点
 16 int end;//终点
 17 int spiltpoint;//分割点 分割线在分割点与下一点之间
 18 int multiplytimes;//临时存储子式的乘法运算次数
 19 int rows, columns, interfaces;//行 列 接口
 21 for  { ///间隔距离 相邻矩阵的间隔距离为1
 22 for  { ///起点从第一个矩阵的列开始
 23 //子式确立,下面开始计算这个子式的最少乘法运算次数,初值先设为最大整数
 24 end = start + span;
 25 num[start][end] = int_max;
 26 for  {
 27 rows = *;
 28 columns = *;
 29 interfaces = *;
 31 multiplytimes = num[start][spiltpoint] + num[spiltpoint + 1][end] + rows * interfaces * columns;
 32 if  {
 33 points[start][end] = spiltpoint; ///记录分割点
 34 num[start][end] = multiplytimes; ///记录最少乘法次数
 35 }
 36 }
 37 }
 38 }
 39 return 0;
 40 }
 42 //根据记录的分割点,生成最后的矩阵相乘表达式
 43 string make_result {
 44 if 
 45 return string;
 46 int split = points[t1][t2];
 47 return " + "*" + make_result + ")";
 48 }
 51 int main
 52 {
 53 int matrixnum = 0;///连乘的矩阵个数
 54 vector pair int, int data; ///存储矩阵的尺寸
 56 //手动输入
 57 //输入的第一个值是第一个矩阵的行,其余是各矩阵的列
 58 int* matrixsizeseq;
 59 matrixsizeseq = uncertaininput;
 60 if 
 61 return false;
 63 //重构为向量
 64 /*for  ///遍历到倒数第二个输入
 65 data.push_back, *));*/
 67 //为记录乘法次数和分割点的n阶矩阵分配空间并初始化
 68 vector vector int num);
 69 vector vector int points);
 70 for  {
 71 for  {
 72 points[i][j] = -1;
 73 num[i][j] = 0;
 74 }
 75 }
 77 calculate_m1;
 78 cout make_result "	最少乘法次数为:" num[1][matrixnum - 1] endl;
 79 cin matrixnum;
 80 return 0;
 81 }
 83 int* uncertaininput
 84 {
 85 //输入0表示输入完成 输入负数认为手误
 86 using namespace std;
 88 int allocatespace = 5;
 89 int* inputsequence = malloc); ///存储矩阵的尺寸输入
 92 int ptroffset = 0; ///指针偏移
 93 int tempsize = 0; ///临时存储输入值
 95 do {
 96 cin tempsize;
 97 if 
 98 continue;
 99 * = tempsize;
100 if 
101 {
102 allocatespace += 5;
103 inputsequence = realloc);
104 }
105 } while ;
106 inputnum = ptroffset; ///偏移量即输入个数
107 return inputsequence;
108 }

比如求$s_{ad}$,则在控制台输入a b c d 0,然后回车即可。当然 a b c d 必须替换为数字。

 

c++提供模版类string,其中一个构造方法可将字符转化为字符串。如 string,第一个参数是源字符延拓次数,这个构造函数将 b 转化为"b"。

新闻聚焦
猜你喜欢
热门推荐
  • 矩阵连乘最优结合 动态规划求解

    矩阵连乘最优结合 动态规划求解

    如果从控制台输入矩阵尺寸的话,可以输入第一个矩阵的行数和各矩阵的列数。直接使用这个序列存储矩阵尺寸。 1 #include iostream 2 #inclu.........

    2019-10-08 来源: 浏览:18 次

    分享
  • 深入了解php4(1)

    深入了解php4(1)

    对于那些对这个个概念不熟的读者,循环是一种能让你一遍一遍重复使用同一系列php命令的控制结构。实际重复的次数可以由你自己决定。 第一个,也是最简单的一个循...

    2019-10-08 来源: 浏览:51 次

    分享
  • Python中表示字符串的三种方法

    Python中表示字符串的三种方法

    使用三引号利用三引号,表示多行的字符串,可以在三引号中自由的使用单引号和双引号,str=”'this is string this is pythod str.........

    2019-10-08 来源: 浏览:22 次

    分享
  • BZOJ4916: 神犇和蒟蒻(杜教筛)

    BZOJ4916: 神犇和蒟蒻(杜教筛)

    算了正经点吧,第一问答案肯定是$1$,还不明白的重学反演吧。第二位其实也不难定理:$\phi = i\phi$$\sum_{d | n} \phi = n$显然.........

    2019-10-08 来源: 浏览:10 次

    分享
  • 神器分享:用微信就能远程控制电脑

    神器分享:用微信就能远程控制电脑

    微信确实一步步改变生活,尤其是微信小程序面世以来,可谓是神器一个接一个的出现,很多功能已经和手机app旗鼓相当了。那么,今天我给大家推荐的的这款刚推出的微...

    2019-10-03 来源: 浏览:10 次

    分享
  • 我下载的文件到底安全吗?3 大在线查

    我下载的文件到底安全吗?3 大在线查

    我得到软件的第一件事不是去双击运行,而是进行查毒。一般电脑端安装的杀毒软件检查后,我还会上传到 VirusTotal,如果 VirusTotal 的结果有点费解.........

    2019-10-03 来源: 浏览:64 次

    分享
  • IT国产化加速,迎接IT国产时代

    IT国产化加速,迎接IT国产时代

    中国是3家, 深度总经理刘闻欢曾在观察者网撰文表示: “国产Linux操作系统已经基本能够满足政府办公使用,却没料此举就像打开了潘多拉魔盒,但以“棱镜”事件为拐...

    2019-10-03 来源: 浏览:34 次

    分享
  • 打造IT服务产业共享之通路

    打造IT服务产业共享之通路

    为参会平台、厂商、电商、渠道商建立与全国优秀IT服务商、集成商的专属连接通路,激活传统IT行业的创新能力,助力行业诚信体系建立”为会议的主旨。 会议期间,集...

    2019-10-03 来源: 浏览:50 次

    分享
  • 王叁寿谈大数据产业的内聚和外延

    王叁寿谈大数据产业的内聚和外延

    大多数投身于大数据产业的公司,事实上都只是参与了其中某个环节。王叁寿认为,完整的大数据产业链包括数据源、大数据硬件支撑层、大数据技术层、大数据交易层...

    2019-10-03 来源: 浏览:54 次

    分享
  • 新iPhone渐变色机身再爆光 或为Max机型

    新iPhone渐变色机身再爆光 或为Max机型

    近日,苹果公司已经宣布将于北京时间9月11日在总部Apple Park召开新品发布会。此前曾有消息称,新iPhone将会推出一款渐变色的机身,而近日有国外保护.........

    2019-09-11 来源: 浏览:16 次

    分享
  • OPPO Reno2现身天翼产品库 4800万后置四

    OPPO Reno2现身天翼产品库 4800万后置四

    9月6日消息,近日OPPO新机Reno 2出现在了天翼产品库之中。根据产品库中的数据显示,OPPO Reno2将会搭载4800万后置四摄像头,该机的电池容量为.........

    2019-09-11 来源: 浏览:9 次

    分享
  • 苹果申请AR眼镜专利 需要搭配iPhone运

    苹果申请AR眼镜专利 需要搭配iPhone运

    中关村在线消息:9月6日消息,近期苹果公司申请了一项全新的专利,这项专利如果不出意外,就是传说中的苹果AR眼镜“Apple Glasses”。这项专利也暗示人.........

    2019-09-11 来源: 浏览:90 次

    分享
  • 诺基亚发布800 Tough IP68 防水防尘+主打

    诺基亚发布800 Tough IP68 防水防尘+主打

    近日诺基亚发布了一款三防手机Nokia 800 Tough。据介绍,这款手机主打耐用性,内置2100 毫安时超大电池,拥有超持久的续航时间。网络方面,Noki.........

    2019-09-11 来源: 浏览:50 次

    分享
  • 贵州 大数据何以成监督利器?

    贵州 大数据何以成监督利器?

    贵州省龙里县纪委监委党风政风监督室主任冯金霞打开县“三公”经费监督系统,输入密码,全县88个部门和单位公务消费情况便一目了然地呈现在面前。 “你看,这里...

    2019-09-04 来源: 浏览:14 次

    分享
  • 大数据 人工智能正以八种方式撼动商

    大数据 人工智能正以八种方式撼动商

    预计到2018年底,70%的企业将实现人工智能。这一比例高于2016年的40%和2017年的51%。这些统计数据清楚地表明了一点——大数据和人工智能将长此以往.........

    2019-09-04 来源: 浏览:64 次

    分享
  • 传统人才向数字化人才转型,2018数字

    传统人才向数字化人才转型,2018数字

    数字经济推动着中国经济转型升级,也带来了人才流动的趋势性变革。中国信息通信研究院产业与规划研究所联合中国领先的职业成长平台脉脉,发布《2018数字经济时代...

    2019-09-04 来源: 浏览:19 次

    分享
  • 政府推进动态 第五十期

    政府推进动态 第五十期

    迪拜将推出世界上第一个区块链法院;美国纽约州萨拉曼卡市暂停加密挖矿业务;韩国政府2019年将拨出5万亿韩元投资区块链、AI等领域......以下带您进入区块链.........

    2019-09-04 来源: 浏览:63 次

    分享
  • 79元值得买吗?魅族移动电源3开箱拆

    79元值得买吗?魅族移动电源3开箱拆

    9月19日魅族在北京演艺中心发布了魅族16x、v8、x8三款手机,同时也在发布会中发布了第三代魅族移动电源产品: 魅族移动电源3 ,小编也入手了一个,接下来给大.........

    2019-08-29 来源: 浏览:80 次

    分享
  • [分层图最短路][学习笔记]

    [分层图最短路][学习笔记]

    给出一个n个点m条边的无向图,每条边有边权,可以选择最多k条边,把他们的边权变为0。问从s到t的最短路是多少。5 6 11 2 21 3 42 4 33 4 1.........

    2019-08-29 来源: 浏览:25 次

    分享
  • 以后搬砖都没工作了?科学家们正研

    以后搬砖都没工作了?科学家们正研

    据基督科学箴言报报道,研究人员希望将制造业革命推向建筑业,但建筑行业已经在以自己的方式实现 自动化 。想象下这样的未来:只要你按下按钮,各种机器就会行动...

    2019-08-29 来源: 浏览:73 次

    分享
  • 详解如何在SpringBoot里使用SwaggerUI

    详解如何在SpringBoot里使用SwaggerUI

    swagger是一种和语言无关的规范和框架,用于定义服务接口,主要用于描述restful的api。它专注于为api创建优秀的文档和客户端库。支持swagger的.........

    2019-08-29 来源: 浏览:11 次

    分享
  • Ryzen 7 3700X与Core i9

    Ryzen 7 3700X与Core i9

    本文授权转载,其它媒体转载请经超能网同意。其实从amd的第二代锐龙和第三代锐龙处理器的评测就能看出,amd这几年来处理器的单线程和多线程性能都有所提升,从ze...

    2019-08-27 来源: 浏览:25 次

    分享
  • RTX 20 Super系列显卡缺货?NVIDIA:这证

    RTX 20 Super系列显卡缺货?NVIDIA:这证

    nvidia今年7月初推出了rtx 20 super系列显卡,新的显卡基本是加量不加价,难得提升一下性价比,所以上市后颇受欢迎,官方商城前两天还补货了一批rtx.........

    2019-08-27 来源: 浏览:80 次

    分享
  • 迪兰推最强RX 5700 XT非公版显卡:三风

    迪兰推最强RX 5700 XT非公版显卡:三风

    尽管amd表态不会停产非公版rx 5700系列显卡,不过随着显卡推出非公版rx 5700及rx 5700 xt显卡,公版显卡并不建议选择了,就算110 c高温可.........

    2019-08-27 来源: 浏览:31 次

    分享
  • 如果电脑速度变慢了 它可能正在帮别

    如果电脑速度变慢了 它可能正在帮别

    你知道吗?挖矿病毒不仅吞噬电力,更能拖慢你的计算能力。许多 中招 的数据中心,以及无法精确统计的僵尸网络,正在贪婪的吞噬电力、拖慢企业的计算能力。对于个...

    2019-08-27 来源: 浏览:82 次

    分享
  • vue项目部署上线遇到的问题及解决方

    vue项目部署上线遇到的问题及解决方

    前言 今天把自己写的demo登录写完了,就想着试着走一下部署上线的流程。参考了很多的文档,终于成功进行了部署。在这里将服务器的搭建和vue项目的部署上线进行整......

    2019-08-22 来源: 浏览:79 次

    分享
  • PHP面向对象分析设计的61条军规小结

    PHP面向对象分析设计的61条军规小结

    所有数据都应该隐藏在所在的类的内部。 类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 尽量减少类的协议中的消息。 实现所有类都理解的最基本公有接...

    2019-08-22 来源: 浏览:50 次

    分享
  • AI自由变换工具中的透视该怎么使用

    AI自由变换工具中的透视该怎么使用

    前面我们都一一讲解了自由变换工具的各种功能,今天这节我们来学习它的最后一个功能:透视功能。1、为了好说明,我们现在用矩形工具在画布上画一个矩形图形2、用...

    2019-08-22 来源: 浏览:75 次

    分享
  • python之Flask实现简单登录功能的示例代

    python之Flask实现简单登录功能的示例代

    使用flask-wtf做登录的表单验证,这里简单做了账号密码不为空如,当我们不填写密码时,点击登录:model/_init_.py# config=utf-8 .........

    2019-08-22 来源: 浏览:78 次

    分享
  • C#使用Directoryinfo类获得目录信息和属

    C#使用Directoryinfo类获得目录信息和属

    本文实例讲述了c#使用directoryinfo类获得目录信息和属性的方法。分享给大家供大家参考。具体如下:using system;using system..........

    2019-08-20 来源: 浏览:61 次

    分享
  • 提升网站关键词排名的4大绝招分享

    提升网站关键词排名的4大绝招分享

    不管是大的门户网站还是小的企业网站,无不为关键词排名提升而揪心,排名上不去揪心,排名上去了没流量更揪心,所以必须要有强有力的关键词选取和排名提升的方法...

    2019-08-20 来源: 浏览:39 次

    分享
  • 超全自媒体变现方式:3类8种方式告诉

    超全自媒体变现方式:3类8种方式告诉

    目前微信公众号这么多,早已经过了红利期,那么如何做好一个公众号,如何通过一个微信公众号来变现养活自己呢?首先,微信公账号的盈利模式无非就是依据品牌导入...

    2019-08-20 来源: 浏览:99 次

    分享
  • 苏醒砸的电视是什么牌子的?这回真

    苏醒砸的电视是什么牌子的?这回真

    欧冠半决赛次回合的比赛中,利物浦4-0战胜了巴萨,以总比分4-3淘汰对手晋级欧冠决赛。图片截取自视频图片截取自视频巴萨死粉、歌手苏醒本场在家中与朋友聚会看球时...

    2019-08-20 来源: 浏览:4 次

    分享
  • Python  操作 MySQL 数据库

    Python 操作 MySQL 数据库

    import pymysql #python3conn=pymysql.connect #字符集不是必须的cursor = conn.cursorsql="se.........

    2019-08-15 来源: 浏览:10 次

    分享
  • 文本溢出插件jquery.dotdotdot.js使用方法

    文本溢出插件jquery.dotdotdot.js使用方法

    插件下载地址:https://github.com/frdh/jquery.dotdotdot引入jquery.js和jquery.dotdotdot.jssc.........

    2019-08-15 来源: 浏览:86 次

    分享
  • PS怎么利用路径快速画出简单的花朵

    PS怎么利用路径快速画出简单的花朵

    1、调出椭圆工具,并且把工具模式设置为:路径2、按ctrl+r,调出标尺,再拉出两条参考线,这两条参考线相交;再调出椭圆工具,以相交点为中心画出一个正圆形路径。...

    2019-08-15 来源: 浏览:61 次

    分享
  • 枚举getClass、getDeclaringClass区别

    枚举getClass、getDeclaringClass区别

    枚举getClass、getDeclaringClass区别 1):“不含抽象方法”,所有枚举常量未重写方法,的class getClass与getDeclar.........

    2019-08-15 来源: 浏览:16 次

    分享
  • 选择排序的理解

    选择排序的理解

    .........

    2019-08-13 来源: 浏览:47 次

    分享
  • C++ 单例模式(懒汉、饿汉模式)

    C++ 单例模式(懒汉、饿汉模式)

    // 饿汉模式的关键:初始化即实例化singelton *singelton::single = new singelton;int singelton::m_.........

    2019-08-13 来源: 浏览:89 次

    分享
  • 洛谷 P1141 01迷宫题解

    洛谷 P1141 01迷宫题解

    对于60\%60%的数据,n 100,m 100n 100,m 100;对于100\%100%的数据,n 1000,m 100000n 1000,m 10000.........

    2019-08-13 来源: 浏览:57 次

    分享
  • Java连载12

    Java连载12

    一、集成开发环境1.什么是集成开发环境集成开发环境可以使软件开发变得更简单没有ide工具:i.需要安装jdk,需要配置环境变量;需要手动的将java源文件编译生.........

    2019-08-13 来源: 浏览:43 次

    分享
  • c#使用SoundPlayer播放wav格式音频

    c#使用SoundPlayer播放wav格式音频

    1.引用system.media名称空间下的类soundplayer soundplayer player = new soundplayer;2.方法.........

    2019-08-08 来源: 浏览:15 次

    分享
  • bin文件夹下的某个dll总是自动刷新为

    bin文件夹下的某个dll总是自动刷新为

    如上图所示,一般这种问题都是dll版本和配置文件中的dll版本对应不上才引起的,可以通过替换对应版本的dll或者修改配置文件中的版本号即可。然而我的情况是:修复...

    2019-08-08 来源: 浏览:48 次

    分享
  • WeihanLi.Npoi 导出支持自定义列内容啦

    WeihanLi.Npoi 导出支持自定义列内容啦

    之前也有网友给提出过希望列合并或者自定义列内容的 issue 或请求,起初因为自己做 weihanli.npoi 这个扩展的最初目的是导入导出的简单化,使用这个.........

    2019-08-08 来源: 浏览:51 次

    分享
  • 1. mvc 树形控件tree + 表格jqgrid 显示界

    1. mvc 树形控件tree + 表格jqgrid 显示界

    [{"id":"1","text":"系统管理","value":"1","parentnodes":"0","showcheck":false,"isexpa.........

    2019-08-08 来源: 浏览:25 次

    分享
换一换
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。