算法
算法
夜阑.
这个作者很懒,什么都没留下…
展开
-
Prime Ring Problem
Prime Ring ProblemA ring is compose of n circles as shown in diagram. Put natural number 1, 2, …, n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.Note: the number of first circle should always be 1.Inputn原创 2021-07-17 10:18:48 · 81 阅读 · 0 评论 -
大数加法(可计算负数)
大数加法给出2个大整数A,B,计算A+B的结果。Input第1行:大数A 第2行:大数B (A,B的长度 <= 10000 需注意:A B有可能为负数)Output输出A + BSample Input68932147586468711654886Sample Output537643802472#include<iostream>#include<algorithm>#include<string>using namespace std原创 2022-01-14 15:46:30 · 291 阅读 · 0 评论 -
笨拙的手指(暴力)
笨拙的手指奶牛贝茜正在学习如何在不同进制之间转换数字。但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔。每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中的某一位数字写错。例如,如果她将数字 14 转换为二进制数,那么正确的结果应为 1110,但她可能会写下 0110 或 1111。贝茜不会额外添加或删除数字,但是可能会由于写错数字的原因,写下包含前导 0 的数字。给定贝茜将数字 N 转换为二进制数字以及三进制数字的结果,请确定 N 的正确初始值(十进制表示)。输入格式第一行包含原创 2022-01-05 10:16:30 · 107 阅读 · 0 评论 -
Card Trick
Card Trick时间限制: 1 Sec 内存限制: 128 MB题目描述The magician shuffles a small pack of cards, holds it face down and performs the following procedure:The top card is moved to the bottom of the pack. The new top card is dealt face up onto the table. It is the A原创 2021-05-08 19:45:49 · 99 阅读 · 0 评论 -
递归实现排列型枚举
递归实现排列型枚举把 1∼n 这 n 个整数排成一行后随机打乱顺序,输出所有可能的次序。输入格式一个整数 n。输出格式按照从小到大的顺序输出所有方案,每行 1 个。首先,同一行相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面。数据范围1≤n≤9输入样例:3输出样例:1 2 31 3 22 1 32 3 13 1 23 2 1#include<stdio.h>int a[10],book[10]={0};int原创 2022-01-10 17:43:24 · 809 阅读 · 0 评论 -
递归实现组合型枚举
递归实现组合型枚举从 1∼n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。输入格式两个整数 n,m ,在同一行用空格隔开。输出格式按照从小到大的顺序输出所有方案,每行 1 个。首先,同一行内的数升序排列,相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面(例如 1 3 5 7 排在 1 3 6 8 前面)。数据范围n>0 ,0≤m≤n ,n+(n−m)≤25输入样例:5 3输出样例:1 2 31 2 41 2 5原创 2022-01-10 17:41:15 · 42 阅读 · 0 评论 -
马蹄铁(DFS)
马蹄铁尽管奶牛贝茜发现每个平衡括号字符串都很美观,但她特别喜欢被她称为“完全”平衡的括号字符串----一个由 ( 构成的字符串后接一个长度相同的 ) 构成的字符串。例如:(((())))有一天,当贝茜穿过牛棚时,她发现地面上有一个 N×N 的马蹄铁矩阵。每个马蹄铁的方向都看上去像 ( 或 )。从矩阵的左上角开始,贝茜希望四处走动以拾起马蹄铁,使得她捡起的马蹄铁按顺序构成的括号字符串是完全平衡的。请计算她能得到的最长完全平衡括号字符串的长度。每一步中,贝茜可以沿上下左右四个方向移动。她只能移动原创 2022-01-17 22:09:36 · 184 阅读 · 0 评论 -
River Crossing
River Crossing时间限制: 1 Sec 内存限制: 128 MB题目描述 Afandi is herding N sheep across the expanses of grassland when he finds himself blocked by a river. A single raft is available for transportation.Afandi knows that he must ride on the raft for all crossings原创 2021-05-08 19:48:45 · 123 阅读 · 0 评论 -
最短路(Floyd,Dijkstra)
最短路在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?Input输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛场所在地,M则表示在成都有几条路。N=M=0表示输入结束。接下来M行,每行包括3个整数A,B,C(1<=原创 2022-01-05 12:53:24 · 39 阅读 · 0 评论 -
A strange lift(BFS)
A strange liftThere is a strange lift.The lift can stop can at every floor as you want, and there is a number Ki(0 <= Ki <= N) on every floor.The lift have just two buttons: up and down.When you at floor i,if you press the button “UP” , you will go原创 2021-11-24 22:05:59 · 217 阅读 · 0 评论 -
Metric Matrice
Metric Matrice时间限制: 1 Sec 内存限制: 128 MB题目描述nt j, determine if the distance matrix is “a metric” or not.A distance matrix a[i][j] is a metric if and only if1. a[i][i] = 02. a[i][j]> 0 if i != j3. a[i][j] = a[j][i]4. a[i][j] + a[j][k] >原创 2021-05-05 20:31:15 · 105 阅读 · 0 评论 -
汉诺塔IV(递归)
汉诺塔IVProblem Description还记得汉诺塔III吗?他的规则是这样的:不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到小盘的上面。xhd在想如果我们允许最大的盘子放到最上面会怎么样呢?(只允许最大的放在最上面)当然最后需要的结果是盘子从小到大排在最右边。Input输入数据的第一行是一个数据T,表示有T组数据。每组数据有一个正整数n(1 <= n <= 20),表示有n个盘子。Output对于每组输入数据,最少需要的原创 2021-11-29 18:22:26 · 150 阅读 · 0 评论 -
最强DE战斗力
最强DE战斗力时间限制: 1 Sec 内存限制: 128 MB题目描述春秋战国时期,赵国地大物博,资源非常丰富,人民安居乐业。但许多国家对它虎视眈眈,准备联合起来对赵国发起一场战争。显然,面对多个国家的部队去作战,赵国的兵力明显处于劣势。战斗力是决定战争成败的关键因素,一般来说,一支部队的战斗力与部队的兵力成正比。但当把一支部队分成若干个作战队伍时,这个部队的战斗力就会大大的增强。一支部队的战斗力是可以通过以下两个规则计算出来的:1.若一支作战队伍的兵力为N,则这支作战队伍的战斗力为N;2.原创 2021-05-05 20:06:18 · 47 阅读 · 0 评论 -
矩阵中不重复的元素(map)
矩阵中不重复的元素一个n行m列的矩阵。该矩阵的第一行是ab,a(b+1),…,a^(b + m - 1)第二行是(a+1)b,(a+1)(b+1),…,(a+1)^(b + m - 1)…第n行是(a + n - 1)^b,(a + n - 1)^(b+1),…,(a + n - 1)^(b + m - 1)其中a^b表示a的b次方,问这个矩阵里有多少不重复的数。例如m = 4, n = 3, a = 2, b = 2。其中24与42是重复的元素,因此不重复的数有11个。2^2=4, 2^3原创 2022-01-14 16:45:49 · 424 阅读 · 0 评论 -
Knight Moves
C - Knight MovesA friend of you is doing research on the Traveling Knight Problem (TKP) where you are to find the shortest closed tour of knight moves that visits each square of a given set of n squares on a chessboard exactly once. He thinks that the mos原创 2021-07-16 21:48:52 · 49 阅读 · 0 评论 -
干草堆(差分)
干草堆贝茜对她最近在农场周围造成的一切恶作剧感到抱歉,她同意帮助农夫约翰把一批新到的干草捆堆起来。开始时,共有 N 个空干草堆,编号 1∼N。约翰给贝茜下达了 K 个指令,每条指令的格式为 A B,这意味着贝茜要在 A…B 范围内的每个干草堆的顶部添加一个新的干草捆。例如,如果贝茜收到指令 10 13,则她应在干草堆 10,11,12,13 中各添加一个干草捆。在贝茜完成了所有指令后,约翰想知道 N 个干草堆的中值高度——也就是说,如果干草堆按照高度从小到大排列,位于中间的干草堆的高度。方便起见原创 2022-01-05 10:24:47 · 110 阅读 · 0 评论 -
汉诺塔III(递归)
汉诺塔IIIProblem Description约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下、由小到大顺序串着由64个圆盘构成的塔。目的是将最左边杆上的盘全部移到右边的杆上,条件是一次只能移动一个盘,且不允许大盘放在小盘的上面。现在我们改变游戏的玩法,不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到下盘的上面。Daisy已经做过原来的汉诺塔问题和汉诺塔II,但碰到这个问题时,她想了很久都不能解决,现在请你原创 2021-11-29 18:18:03 · 203 阅读 · 0 评论 -
奶牛选美(dfs+bfs)
奶牛选美听说最近两斑点的奶牛最受欢迎,约翰立即购进了一批两斑点牛。不幸的是,时尚潮流往往变化很快,当前最受欢迎的牛变成了一斑点牛。约翰希望通过给每头奶牛涂色,使得它们身上的两个斑点能够合为一个斑点,让它们能够更加时尚。牛皮可用一个 N×M 的字符矩阵来表示,如下所示:……XXXX…XXX……XXXX…XX….XXXX…XXX……XXXXX……XXX…其中,X 表示斑点部分。如果两个 X 在垂直或水平方向上相邻(对角相邻不算在内),则它们属于同一个斑点,由此看出上图中恰好有两个斑点。原创 2022-01-05 10:30:43 · 169 阅读 · 0 评论 -
快速幂/乘
快速幂:long long fastpower(long long base,long long power){ long long result=1; while(power>0) { if(power&1) result=result*base%MOD; power>>=1; base=(base*base)%MOD; } return result%MOD;}原创 2021-11-24 21:56:54 · 164 阅读 · 0 评论 -
递归实现指数型枚举
递归实现指数型枚举从 1∼n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。输入格式输入一个整数 n。输出格式每行输出一种方案。同一行内的数必须升序排列,相邻两个数用恰好 1 个空格隔开。对于没有选任何数的方案,输出空行。本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。数据范围1≤n≤15输入样例:3输出样例:322 311 31 21 2 3#include<stdio.h>#include<cstring>原创 2022-01-10 17:39:45 · 106 阅读 · 0 评论