自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 矩阵连乘

问题:给定n个矩阵:A1,A2,...,An,其中Ai与Ai+1是可乘的,i=1,2...,n-1。确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。输入数据为矩阵个数和每个矩阵规模,输出结果为计算矩阵连乘积的计算次序和最少数乘次数。分析:由于矩阵乘法满足结合律,故计算矩阵的连乘积可以有许多不同的计算次序。这种计算次序可以用加括号的方式来确定。若一个矩阵连乘积的计算次

2017-10-14 20:46:01 819

原创 合并排序

合并排序是一种典型的分治算法:首先将序列分为两部分,然后对每一部分进行循环递归的排序,然后逐个将结果进行合并。#include#define m 7int a[m]={4,5,2,1,7,6,3};void mergesort(int a[],int left,int right){ int mid; int b[m]; int i,j,k; if(left==right)

2017-10-10 21:34:42 318

原创 最长公共子序列

最长公共子序列(longest common sequence)和最长公共子串(longest common substring)不是一回事儿。什么是子序列呢?即一个给定的序列的子序列,就是将给定序列中零个或多个元素去掉之后得到的结果。我们可以知道递推公式为:               0;                                i=0 or j=0;c[i]

2017-10-10 21:10:12 308

原创 循环赛日程表

问题:设有 n=2k个选手要进行网球循环赛。现要设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他 n-1个选手各赛一次;(2)每个选手一天只能赛一次;(3)循环赛一共进行 n-1天。分析:可以将比赛表设计成一个n行n-1列的二维表,其中第i行第j列的元素表示和第i个选手在第j天比赛的选手号。采用分治策略,可将所有参加比赛的选手分成两部分,n=2^k个选手的

2017-10-10 19:55:40 1287

原创 颠倒的价牌

问题:小李的店里专卖其它店中下架的样品电视机,可称为:样品电视专卖店。其标价都是4位数字(即千元不等)。小李为了标价清晰、方便,使用了预制的类似数码管的标价签,只要用颜色笔涂数字就可以了。  这种价牌有个特点,对一些数字,倒过来看也是合理的数字。如:1 2 5 6 8 9 0 都可以。这样一来,如果牌子挂倒了,有可能完全变成了另一个价格,比如:1958 倒着挂就是:8561,差了几千元啊!

2017-09-15 11:06:43 394

原创 整数划分问题

问题:将正整数 n 划分为一系列正整数的和:n=n1+n2+.....+nk正整数的这种表示称为正整数 n 的划分。不同划分的个数称为正整数 n 的划分数,记为 p(n)

2017-09-13 17:33:43 439

原创 低碳生活大奖赛

问题: 某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:   (1)每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分       数(选手必须回答问题,不回答按错误处理)。   (2)每位选手都有一个起步的分数为10分。 某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)       哪个题目答对

2017-09-12 21:01:28 379

原创 李白打酒

问题:话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:        无事街上走,提壶去打酒。        逢店加一倍,遇花喝一斗。    这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。    请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则:babaabbabbabbbb 就

2017-09-12 16:48:39 321

原创 8皇后问题

问题:在n*n的棋盘上放置彼此不受攻击的n个皇后,按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n*n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。分析:冲突。包括行、列、两条对角线:列:规定每一列放一个皇后,不会造成列上的冲突;行:当第I行被某个皇后占领后,则同一行上的所有空格都不能再放皇后;对角线:对角

2017-09-12 12:23:25 1238

原创 0-1背包问题

问题:给定一个容积为c的背包,去尝试装n个重量为wi、价值为vi的物体,求能装下的物体的最大价值。 分析:0-1背包只有两种选择,放与不放到背包里,采用二进制表示,1表示放入背包,0表示不放入背包,因此我们基于二进制进行暴力搜索。#include#include#define n 5int weight[n]={12,2,1,4,1};int value[n]={4,2,1,1

2017-09-12 10:48:00 477

原创 子集和问题

问题:给定一个集合和一个正整数c,判定是否存在该集合的子集,使其所有元素的和等于给定的正整数c?输出所有子集合。分析:将其转化成二进制解空间进行求解。#include#include#define n 5int main(){ int a[n]={-1,2,3,-2,5}; int sum; int num,temp; int c=1; for(num=0;num<pow(

2017-09-11 21:49:47 459

原创 买饮料

问题: 啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。分析:如果82.3全买啤酒最多能买82.3/2.3=35瓶,如果82.3全买饮料最多能买82.3/1.9=43瓶,以此作为控制条件。#include#includeint main(){ int beer,drink; fl

2017-09-11 21:19:03 268

原创 最多约数问题

问题描述:正整数x的约数是能整除x的正整数。正整数x的约数个数记为div(x)。例如,10有4个约数:1、2、5、10。设a和b是两个正整数,试计算a和b之间约数个数最多的数x。算法设计:对于给定的2个正整数a≤b,编程计算a 和 b 之间约数个数最多的数。 数据输入:输入数据由文件名为input.txt的文本文件提供。文件的第1 行有2 个正整数 a和 b。 结果输出: 若找到的

2017-08-31 21:02:42 1622

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除