- 博客(12)
- 收藏
- 关注
原创 求最短路径
求最短路径的方法:1.深度优先或广度优先搜索算法从起点开始访问所有深度遍历路径或广度优先路径,则到达终点节点的路径有多条,取其中路径权值最短的一条则为最短路径。void dfs(int cur,int dst){ if(minpath<dst) return;//当前走过的路径大雨之前的最短路径,没有必要再走下去了 if(cur==en){//临界条件,当走到终点n if(minpath>dst){ minpath=dst;
2022-03-22 00:09:47 2265
原创 求最小生成树
给定一张 n 个点 m 条边的带权连通无向图,点的编号从 1 到 n,可能存在重边和自环。现在,请你求出这张图总边权和最小的支撑树(最短树)的边de权之和。即,找到一颗支撑树,满足选用边的权和最小,输出这个权和。
2022-03-20 01:44:14 2146
原创 火柴棒等式
给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。用火柴棍拼数字0-9的拼法如图所示:注意: 加号与等号各自需要两根火柴棍 如果A≠B,则A+B=C与B+A=C视为不同的等式(A,B,C>=0) n根火柴棍必须全部用上 n<=24数字1000和加号和等号刚好需要24跟火柴棍,所以将数字的上界设为1000暴力的将0-1000每个数字需要多少火柴棍算出,存入数组中 ,然后进行
2022-03-15 00:01:58 165
原创 黑白棋子移动
有 2n个棋子排成一行,开始为位置白子全部在左边,黑子全部在右边。(4<=n<=100)移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可以右移到空位上去,但不能调换两个棋子的左右位置。每次移动必须跳过若干个棋子(不能平移),要求最后能移成黑白相间的一行棋子。例如当n=5时:ooooo*****--=>--o*o*o*o*o*(o为白棋 *为黑棋 -为空格)方法:采用分治的方法当n=4时的步骤与n=5,n=6...的一些步骤时相同的,.
2022-03-13 00:54:17 511
原创 linux 服务器版ubuntu在虚拟机上的安装
1.下载虚拟机软件virtualboxDownloads – Oracle VM VirtualBox2.下载光驱(ios文件)https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/20.04/在清华大学开源软件镜像站中下载比较快。3.虚拟机安装新建虚拟机选择启动语言选项选择英语之后一直done,然后选择continue创建用户什么都不用选选择安装ssh等待系统安装完成...
2022-03-06 21:10:52 72
原创 三连击~~~~
将1,2,…,9 共 99 个数分成 3 组,分别组成 3 个三位数,且使这 33 个三位数构成 1:2:3 的比例,试求出所有满足条件的 3 个三位数。例:192 384 576#include <stdio.h>int main(){ int a,b,c; for(a=123;a<=333;a++) { b=a*2; c=a*3; i
2022-03-04 00:38:24 44
原创 进制转换(负进制)
我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置为指数,以 1010 为底数的幂之和的形式。例如 123可表示为 1×10^2+2×10^1+3×10^0 这样的形式。与之相似的,对二进制数来说,也可表示成每个二进制数码乘以一个以该数字所处位置为指数,以 2 为底数的幂之和的形式。一般说来,任何一个正整数 R或一个负整数 -R 都可以被选来作为一个数制系统的基数。如果是以 R 或 −R 为基数,则需要用到的数码为0,1,....R−1。例如当 R=7 时,所需用
2022-02-28 23:23:25 599
原创 图论与代数结构 最短路问题
给定一张 n 个点、m 条边的有向图,求 1 号点到每个点的最短路径长度。注意,图可能存在重边和自环,保证不存在负环。
2022-02-25 01:30:35 353
原创 卡特兰数 有关栈
建立数组h。h[i]表示第1个数到第i个数的全部可能性。1, 2, 3, 4依次进栈,则可能的一种进出栈顺序为:1in->2in->2out->3in->4in->4out->3out->1out,所以出栈顺序为:2431,那么请问按照1, 2, 3, 4,…, n依次进栈,出栈顺序种数h(n)为多少?
2022-02-24 00:04:08 704
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人