- 博客(23)
- 收藏
- 关注
原创 求两个数的最大公因数(辗转相除法)
找9和6的最大公因数:9÷6=1……36÷3=23就是9和6的最大公因数。再如:30和80的最大公因数。20÷10=210就是30和80的最大公因数。简单点的思路就是:(1).先用一个数保存要求两个数的余数,(2).每次选取那两个数里面最小的一个去除以余数,(3).直到余数为0;具体讲就是(以9和6为例):(1)用一个变量保存它们的余数:int x=9%6=3;(2)选9和6里最小的去取余余数: 6%3=0;
2023-04-07 21:47:40
942
原创 统计学习方法——朴素贝叶斯
三扇门问题之前在美国有一个著名的综艺节目,这个节目里有三扇关闭着的门。其中有两扇的后面是山羊,有一扇则放着一辆豪车。主持人会让嘉宾做出选择,嘉宾做出选择之后,主持人会打开其中错误的一扇门,询问嘉宾:伙计,你有一次更改选择的机会,你要使用吗?我们从直觉来分析,我们更不更换答案应该不会影响。毕竟三扇门里有一个正确答案,主持人排除的是错误答案,也就是说正确答案就在剩下的两个门里。不管我们换不换选择,门后是大奖的概率都应该是二分之一才对。但是事实是如果不更换的话,获奖的概率是三分之一,而更换的话,获奖的概率高达
2022-05-02 22:20:30
208
原创 统计学习方法——k近邻法
什么是k近邻?通俗来讲就是物以类聚,人以群分。具体来讲就是说,同一类别的东西其实是存在非常多的相同的特点,那么我们就可以通过某个某个样本的特点从而预测出它是什么类,或者我们可以通过看一个样本周围的样本都是什么类别,进而预测出它是什么类别,毕竟相同的东西扎堆存在。所以说,既然是通过它周围的东西推导出它是什么类,那么“周围”到底怎么定义,所以就不得不引入一些距离衡量的东西,那么接下来看一些测量距离的名词。欧氏距离:其实就是之前我有提到过的二范数,其实也可以理解为两点间的距离,公式如下:就是它们坐标相减的平
2022-05-02 20:34:47
222
原创 统计方法学习——感知机模型
感知机模型简单来讲就是找到一条直线可以无差别或者说是尽可能少的误差把图中的红点和绿色的点给区分开来,那么这样的一条直线所形成的函数就是就可以别称作感知机模型上式里面,x是特征向量,其实就是特征空间里面的点,w和b为感知模型的参数,wx+b叫做超平面,w是超平面的法向量,b是超平面的截距,很显然式子的结果就有两种可能,那么就是这个超平面把数据分为了两个部分,如果说红色在直线的上方那么输出结果就是+1,相反输出的结果就是-1,如果点恰好在直线上那么结果就是0。超平面具体来讲就是说根据已知的特征向量把
2022-05-02 17:26:08
758
原创 最长公共子序列问题—动态规划sdut
最长公共子序列问题Description给定两个序列 X={x1,x2,…,xm} 和 Y={y1,y2,…,yn},找出X和Y的最长公共子序列。Input输入数据有多组,每组有两行 ,每行为一个长度不超过500的字符串(输入全是大写英文字母(A,Z)),表示序列X和Y。Output每组输出一行,表示所求得的最长公共子序列的长度,若不存在公共子序列,则输出0。SampleInputABCBDABBDCABAOutput4代码实现及思想大概.(本人学的也不是很好,也处于一边学习的路上
2020-12-07 21:49:25
586
原创 工作分配问题—搜索算法sdut
工作分配问题Description设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为 cij。试设计一个算法,为每一个人都分配1 件不同的工作,并使总费用达到最小。设计一个算法,对于给定的工作费用,计算最佳工作分配方案,使总费用达到最小。Input输入数据的第一行有1 个正整数n (1≤n≤20)。接下来的n行,每行n个数,表示工作费用。Output将计算出的最小总费用输出。SampleInput310 2 32 3 43 4 5Output9代码实现及思想大概.(
2020-12-07 17:00:54
392
原创 子集和问题—搜索算法sdut
子集和问题Description子集和问题的一个实例为〈S,t〉。其中,S={ x1 , x2 ,…,xn }是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得:。试设计一个解子集和问题的回溯法。对于给定的正整数的集合S={ x1 , x2 ,…,xn }和正整数c,计算S 的一个子集S1,使得:。Input输入数据的第1 行有2 个正整数n 和c(n≤10000,c≤10000000),n 表示S 的大小,c是子集和的目标值。接下来的1 行中,有n个正整数
2020-12-07 13:42:43
518
2
原创 区间覆盖问题—贪心算法SDUT
区间覆盖问题Description设x1 , x2 ,…… , xn 是实直线上的n 个点。用固定长度的闭区间覆盖这n 个点,至少需要多少个这样的固定长度闭区间?对于给定的实直线上的n个点和闭区间的长度k,设计解此问题的有效算法,计算覆盖点集的最少区间数,并证明算法的正确性。Input输入数据的第一行有2 个正整数n和k(n≤10000,k≤100),表示有n个点,且固定长度闭区间的长度为k。接下来的1 行中,有n个整数,表示n个点在实直线上的坐标(可能相同)。Output输出一个整数,表示计
2020-12-07 12:20:09
1681
原创 活动选择--贪心算法sdut
活动选择Description学校的大学生艺术中心周日将面向全校各个学院的学生社团开放,但活动中心同时只能供一个社团活动使用,并且每一个社团活动开始后都不能中断。现在各个社团都提交了他们使用该中心的活动计划(即活动的开始时刻和截止时刻)。请设计一个算法来找到一个最佳的分配序列,以能够在大学生艺术中心安排不冲突的尽可能多的社团活动。比如有5个活动,开始与截止时刻分别为:最佳安排序列为:1,4,5。Input第一行输入活动数目n(0<n<100);以后输入n行,分别输入序号为1到n的
2020-12-06 21:42:36
417
5
原创 装船问题—贪心算法
装船问题Description王小二毕业后从事船运规划工作,吉祥号货轮的最大载重量为M吨,有10种货物可以装船。第i种货物有wi吨,总价值是pi。王小二的任务是从10种货物中挑选若干吨上船,在满足货物总重量小于等于M的前提下,运走的货物的价重比最大。Input输入数据的第一行有一个正整数M(0 < M < 10000),表示所有货物最大载重量。在接下来的10行中,每行有若干个数(中间用空格分开),第i行表示的是第i种货物的货物的总价值pi ,总重量wi。(pi是wi的整数倍,0 <
2020-12-06 20:55:38
950
原创 汽车加油问题—贪心算法
汽车加油问题Description一辆汽车加满油后可行驶n公里。旅途中有若干个加油站。设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。并证明算法能产生一个最优解。对于给定的n和k个加油站位置,计算最少加油次数。Input输入数据的第一行有2 个正整数n和k(n≤5000,k≤1000),表示汽车加满油后可行驶n公里,且旅途中有k个加油站。接下来的1 行中,有k+1 个整数,表示第k个加油站与第k-1 个加油站之间的距离。第0 个加油站表示出发地,汽车已加满油。第k+1 个加油站表
2020-12-06 17:00:16
724
2
原创 数字三角形问题—动态规划
数字三角形问题Description给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底的路径经过的数字和的最大值。Input输入数据的第1行是数字三角形的行数n,1≤n≤100。接下来n行是数字三角形各行中的数字。所有数字在0…99之间。Output输出数据只有一个整数,表示计算出的最大值。SampleInput573 88 1 02 7 4 4
2020-12-06 16:40:10
992
原创 最少硬币问题—动态规划
#最少硬币问题Description设有n种不同面值的硬币,各硬币的面值存于数组T[1:n]中。现要用这些面值的硬币来找钱。可以使用的各种面值的硬币个数存于数组Coins[1:n]中。对任意钱数0≤m≤20001,设计一个用最少硬币找钱m的方法。对于给定的1≤n≤10,硬币面值数组T和可以使用的各种面值的硬币个数数组Coins,以及钱数m,0≤m≤20001,计算找钱m的最少硬币数。Input输入数据第一行中只有1个整数给出n的值,第2行起每行2个数,分别是T[j]和Coins[j]。最后1行是
2020-12-06 16:15:06
1090
原创 高数Umaru系列(9)——哈士奇
高数Umaru系列(9)——哈士奇Description由于高数巨养的喵星人太傲娇了,要天天吃新鲜猫粮而且还经常欺负高数巨,所以高数巨决定买几条哈士奇尝尝鲜。这天高数巨来到了二手狗市场买哈士奇,高数巨看完了所有的哈士奇,记下了每条哈士奇的价格,并根据对它们的好感程度给它们每只都赋予了一个萌值。高数现在手里有X元,她想通过购买若干条哈士奇来获得尽可能多的萌值。现在给定高数巨手里的钱X以及N条哈士奇的价格和萌值,求高数巨最多可获得多少萌值Input多组输入。对于每组输入,第一行有两个整数N,X(1 &l
2020-12-06 15:46:20
124
原创 骨牌铺方格
骨牌铺方格Description在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数. 例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:Input输入包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0< n<=50)。Output输出铺放方案的总数。SampleInput3Output3代码实现及思想大概.(本人学的也不是很好,也处于一边学习的路上,如有不合适或者理解错误的地方,还请斧正)由于时间原因,思想我会在
2020-12-06 15:42:40
349
原创 最大子段和之分治递归法
最大子段和之分治递归法Description给定n(1<=n<=50000)个整数(可能为负数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n,例如当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为2
2020-12-06 15:37:02
455
原创 整数因子分解问题
整数因子分解问题Description大于1的正整数n可以分解为:n=x1x2…xm。例如,当n=12 时,共有8 种不同的分解式:12=12;12=62;12=43;12=34;12=322;12=26;12=232;12=22*3。对于给定的正整数n,计算n共有多少种不同的分解式。Input输入数据只有一行,有1个正整数n (1≤n≤2000000000)。Output将计算出的不同的分解式数输出。SampleInput12Output8代码实现及思想大概.(本
2020-12-06 11:43:58
1713
4
原创 众数问题-分治算法
众数问题Description给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。对于给定的由n 个自然数组成的多重集S,计算S的众数及其重数。如果出现多个众数,请输出最小的那个。Input输入数据的第1行是多重集S中元素个数n(n<1300000);接下来的n行中,每行有一个最多含有5位数字的自然数,。Output输出数据的第1行给出众数,第2行是重数。Sampl
2020-12-05 21:55:45
1725
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人