自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 P8306 【模板】字典树

sn​ 和 q 次询问,每次询问给定一个文本串 ti​,请回答 s1​∼sn​ 中有多少个字符串 sj​ 满足 ti​ 是 sj​ 的。查询的时候,就一步一步在树中找,如果找到叶子结点了,但查询的单词没找完,就说明它不是已出现字符串的前缀,如果找完了字符串,就说明是。在输入模式串的时候,就根据上图的思路,按字符串每一位查找,并且存储。第一行是两个整数,分别表示模式串的个数 n 和询问的个数 q。接下来 n 行,每行一个字符串,表示一个模式串。接下来 q 行,每行一个字符串,表示一次询问。

2024-07-09 19:21:47 353

原创 P1656 炸铁路

如果y的追溯值大于了x的时间戳,也就是y的追溯值在x之后,并且,y追溯到的这个点与x一定不连通,因为如果连通,那么y就会顺着这个点追溯到时间戳更小的点x,到这里,我们不难推出:x与y之间直接连通的边,只有这一条,并且没有间接联通的边。炸毁一条路对于一张图来说,本质上就是去掉一条边,不能通过铁路到达就代表这张图不连通了,对于这种去掉之后就可以使整张图不再连通的边,我们称之为割边。第一行 n,m (1≤n≤150,1≤m≤5000),分别表示有 n 个城市,总共 m 条铁路。里面里面讲过,这里就不多说了。

2024-06-19 18:36:28 517

原创 补充:P1379八数码难题解法

八数码难题解法分享

2024-06-14 17:20:33 327

原创 P3388 【模板】割点(割顶)

1号点去掉,图依旧联通,3号去掉,4号去掉,5号去掉影响都不大,这张图的割点是2号点,这下应该对割点有了解了吧。这种情况下,我们遍历当前点能访问到的所有点 ,如果没找过,那么如果与当前点x相连的y点的追溯值大于等于了x点的时间戳,x就是割点。做这道题,我们先得直到什么是割点,割点是指去掉之后可以让图不再联通,这样说可能有点难懂,我们可以画个图。是根节点就很简单了,只要他直接连接的点大于等于两个点,这个点一没,整张图是不是就断开了。所以,我们记录一下根节点连接的边的数量,如果大于等于二,它就是割点。

2024-06-13 19:10:56 254

原创 P2341 受欢迎的牛

这种关系是具有传递性的,如果 A 认为 B 受欢迎,B 认为 C 受欢迎,那么牛 A 也认为牛 C 受欢迎。接下来 M 行,每行两个数 A,B,意思是 A 认为 B 是受欢迎的(给出的信息有可能重复,即有可能出现多个 A,B)。此时,点4的出度也为零,但是,这张图没有最受欢迎的牛,因为条件是除自己以外,所有人都认为它受欢迎才行,所以,在。结论:有环时,先把每一个环合并成一个点,在按照没有环的方案去找,最后最受欢迎的就是那个点合并前的所有点。输出被除自己之外的所有牛认为是受欢迎的牛的数量。

2024-05-29 21:58:15 715

原创 P5931 灯泡

一个突然的想法出现在他的脑海里,他想知道在房间里他的影子的最大长度。对于每组测试数据仅有一行包含三个实数 H,h 和 D,H 表示灯泡的高度,h 表示 Mildleopard 的身高,D 表示灯泡和墙的水平距离。我们只需要用这种方法,算出墙上影子长度(刚好到墙角时,墙上影子长度为零),再加上地上影子长度(人与墙的距离),就能算出影子长度了。求最值的话,用分治最好,枚举人与墙之间的距离,算出最大值,这道题的话,讲一下三分做法。可以看出,这一刻,灯高度H比上D,等于人高度d比影子长(人距墙的距离)

2024-04-29 19:50:33 227

原创 曲线「三分」

明明做作业的时候遇到了 n 个二次函数Si(x)=ax^2+bx+c ,他突发奇想设计了一个新的函数F(x)=max{Si(x)},i=1,2……n。明明现在想求这个函数在 的最小值,要求精确到小数点后四位,四舍五入。

2024-04-26 20:19:49 332

原创 P3385 【模板】负环

使用spfa跑一遍最短路,然后用一个数组cnt记录每个点的入队次数,入队次数大于了n,就是有负环,跑了一遍没找到,就没有。输入的第一行是一个整数 T,表示测试数据的组数。第一行有两个整数,分别表示图的点数 n 和接下来给出边信息的条数 m。对于每组数据,输出一行一个字符串,若所求负环存在,则输出。给定一个 n 个点的有向图,请求出图中是否存在。接下来 m 行,每行三个整数 u, v, w。负环的定义是:一条边权之和为负数的回路。

2024-04-21 11:24:56 312

原创 新的开始

接下来为一个 n×n 的矩阵 p,其中 pi,j​ 表示在第 i 口矿井和第 j 口矿井之间建立电网的费用(数据保证有 pi,j​=pj,i​,且 pi,i​=0。发展采矿业当然首先得有矿井,小 F 花了上次探险获得的千分之一的财富请人在岛上挖了 n 口矿井,但他似乎忘记考虑的矿井供电问题……第 2∼n+1 行,每行一个整数,第 i 个数 vi​ 表示在第 i 口矿井上建立发电站的费用。将这口矿井与另外的已经有电力供应的矿井之间建立电网,费用为 p。输出仅一个整数,表示让所有矿井获得充足电能的最小花费。

2024-04-20 21:33:02 491

原创 繁忙的都市

城市 C 是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造。城市 C 的道路是这样分布的:城市中有 n 个交叉路口,有些交叉路口之间有道路相连,两个交叉路口之间最多有一条道路相连接。接着就是最大边长度,我们要先在里面加一个特判就是如果选择的边数到了需要的n-1条边,就直接跳出循环,因为如果再找,可能会把后面更大的边(因为是排过序的)加进去,答案就不对了。两个整数 s, max,表示你选出了几条道路,分值最大的那条道路的分值是多少。

2024-04-20 12:28:50 313

原创 最短网络kruskal算法

然后我们按路径长度排个序,小的在前,大的在后,依次反填回图中,如果边x填进去时出现了环,就直接不要这条边了。然后,用剩下的边的边权相加,求出权值之和,删掉边之后形成树,权值之和最小的一棵,就是最小生成树。这里我们需要一个数组f,f[i]的值就代表i的"老祖",老祖的概念就是与它连接的最深的点,如果两个点的老祖相同,那这两个点肯定就有环了。kruskal算法的思路很简单,先建边,把边存进有3个值的结构体里面,三个元素u,v,w分别代表起点,终点,路径长度。这样可以保证所有的点联通,并且不会有多余的没用的边。

2024-04-15 21:22:02 249

原创 floyd最短路径解法

floyd的缺点是时间复杂度,跑一遍就是O(N^3),特别难受,在数据范围小的时候可以用,但稍微大一点,比如N=1e5,就直接爆掉了。,但是,它们都是用来求单源最短路径的,比如说有一道题,先建一个图,然后要进行k次询问,问两个点的最短距离,那怎么办?显然不合理,如果k是10000,就已经受不了了,所以,就得用一种新的算法来解决。所有的都弄完了,就是问什么答什么了,如果a[x][y]的值大于1e9,就走不过去,注意,不是等于0x3f3f3f3f,因为中间可能会在找的途中出现微小的差异,但不是很大。

2024-04-15 20:17:30 341

原创 P1106删数问题

键盘输入一个高精度的正整数 N(不超过 250 位),去掉其中任意 k 个数字后剩下的数字按原左右次序将组成一个新的非负整数。这时候就有人问了,比如说要删掉的数在最后一个,这里只遍历1到 len-1,怎么办,看for循环之后的代码:len--当1到 len-1都没有结果是直接执行len--,删掉最后一个,因为删前面的都不能得到最优解。删一个,如果是删最大值的话,得到的结果就是1436,但其实还有更优的,删4,得1386。要想数越小,那每一次删除的改变就要尽量大,要想更大,要怎么办呢。

2024-04-11 21:53:31 285

原创 最优乘车

但在这里不一样,我们要把2->3,2->5,1->5都建立上联系,这样一来,两者不能直接到达的,都是要换乘的,简而言之,就是在输入时,没有建立联系的,都不在一条线上,只要在一条线上的,一定能一步到达,到最后,再将答案减去1,可得正解。一名旅客最近到 H 城旅游,他很想去 S 公园游玩,但如果从他所在的饭店没有一路巴士可以直接到达 S 公园,则他可能要先乘某一路巴士坐几站,再下来换乘同一站台的另一路巴士,这样换乘几次后到达 S 公园。从第二行到第 M 刊行依次给出了第 1 条到第 M 条巴士线路的信息。

2024-04-06 21:03:47 404

原创 最小花费

首先要先理解题目,从一号转到三号有两种方法,1->2->3或者1->3,这里的z分别为1,2,3,代表1%,2%,3%,那么转账后剩下的就分别是99%,98%,97%,那么,方法一就能剩下99%乘98%等于97.02%,方法二剩下97%,方法一剩的多,就学用,那么那一百元就是转账钱数的97.02%,转账钱数就是100/97.02%约等于103.07153164( 八位小数 )。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问 A 最少需要多少钱使得转账后 B 收到 100 元。

2024-04-06 20:39:40 376

原创 最短路计数

输出 N 行,每行一个非负整数,第 i 行输出从顶点 1 到顶点 i 有多少条不同的最短路,由于答案有可能会很大,你只需要输出 mod100003 后的结果即可。它求的是最短路,没有边权,所以说这里我们走到当前边的路径长度,就设为前一个点的最短路径加1,其实也就是求边权都是1的图的最短路径。给出一个 N 个顶点 M 条边的无向无权图,顶点编号为 1∼N。问从顶点 1 开始,到其他每个点的最短路有几条。接下来 M 行,每行两个正整数 x,y,表示有一条顶点 x 连向顶点 y 的边,请注意可能有自环与重边。

2024-04-06 20:02:48 256

原创 带负权的最短路问题

算法来解决最短路径问题,但是Dijkstra有一个前提条件,就是每条边的权值必须要为正数,但是在这道题里面,有路径长度是负数,所以迪杰斯特拉算法不能用于这道题,对于这道题,需要用一个新的算法——SPFA,这个算法比起Dijkstra相对要慢一些,但是应用范围广,可以解决这道题。输入文件第一行为 n 和 m( n,m≤20),表示 n 个顶点和 m 条边,接下来有 m 行,每行三个整数 i、j、k,代表从顶点 i 到顶点 j有一条边,且权值为 k( −100≤k≤100)。题中数据保证无负权环。

2024-04-06 17:42:05 560

原创 热浪

每条道路由道路的起点Rs,终点Re (1 <= Rs <= T;1 <= Re <= T),和花费(1 <= Ci <= 1,000)组成。求从起始的城镇Ts (1 <= Ts <= T)到终点的城镇Te(1 <= Te <= T)最小的总费用。Farmer John此时以先天下之忧而忧,后天下之乐而乐的精神,身先士卒地承担起向德克萨斯运送大量的营养冰凉的牛奶的重任,以减轻德克萨斯人忍受酷暑的痛苦。这里的费用,其实指的就是路径的长度,最小的费用,就是最短路径,这里就可以直接用Dijkstra算法来解。

2024-04-05 21:00:22 301

原创 P1032 字串变换

for循环枚举每个变换规则,进行变化,判断终点,中途记录步数,如果步数大于10,也视为无解,输出。规则的含义为:在 A 中的子串 A1​ 可以变换为 B1​,A2​ 可以变换为 B2​ ⋯。若在 10 步(包含 10 步)以内能将 A 变换为 B,则输出最少的变换步数;接下来若干行,每行有两个字符串 Ai​,Bi​,表示一条变换规则。共进行了 3 次变换,使得 A 变换为 B。例如:A=abcd,B=xyz,第一行有两个字符串 A,B。

2024-04-04 19:38:29 250

原创 P1629 邮递员送信

有一个邮递员要送东西,邮局在节点 1。由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有 m 条道路。那怎么弄,其实仔细想一想,就不难想到,我们可以把有向图反过来存,还是以1为基础求单元最短路,dis里面存的就是2到n距离1的最短路了。第二行到第 (m+1) 行,每行三个整数,u,v,w 表示从 u 到 v 有一条通过时间为 w 的道路。这一看就是用单源最短路径求解答案,首先去第2到n个节点就不用说了,就是1到每个点的最短路径,这个在。第一行包括两个整数,n 和 m,表示城市的节点数量和道路数量。

2024-03-29 17:46:00 726

原创 单源最短路径

用在这道题上面,那就把点分为两种,蓝点和白点,蓝点就是没有确定最小值的,而白点就是已经确定了的,从s开始找他通往的所有蓝点y,用数组dis记录到达y点的长度,接着,再从剩下的蓝点中,找一个值最小的,标记为白点,以他为基础,查找与之相连的蓝点,如此循环。但是用邻接矩阵太浪费空间了,还是用邻接表好一点,邻接表,用的是动态数组,这样会节省空间。给定一个 n 个点,m 条有向边的带非负权图,请你计算从 s 出发,到每个点的距离。然后要注意,记录dis记录的同时,如果元素没被访问,就进行入队操作。

2024-03-28 18:56:53 482

原创 P5507 机关

A*算法就是在所有的节点中选择最优的(最容易到达终点的),这样可以节省许多时间,就好比找东西,先去找可能性更大的,没找到再去找可能性更小的,因此需要一个估价函数,来预估现在的价值,价值更小的也就是我们的优先搜索对象了。这道题一看就肯定用搜索来写,先说一下普通搜索的思路,这题第一个想到的肯定是广搜,用广搜找每一步,枚举12个按钮的可能性,中途用一个数组,记录路径,找到终点(全都为1)时,输出步数与路径。但是,这个估价函数不能偷懒,如果你只返回有几个不一样的值,就会发现,还有一个TLE死犟死犟的,一直A不了。

2024-03-27 18:53:43 919 1

原创 两个数组的交集

接着从头开始找相同的地方,如果a[i]小了,就把 i 往后移一位,因为越后面越大,如果 b[j]小了,就把 j 往后移一位,从而实现找到相同,如果相同了,而且这个数没被找过(题目要求不重复),输出a[i],并且标记a[i],接着两个数都往后移一位。双指针,就是用两个指针指向位置(下标),根据不同的情况改变其中一个指针的位置,从而实现快速地查找。回到这道题,既然是从小到大输出,那么我们就可以把两个数组排个序。按照从小到大的顺序输出两个数组的交集。按照从小到大的顺序输出两个数组的交集。

2024-03-16 21:59:48 457 1

原创 行走的机器人

机器人会自动将1,2,3,4随机映射到不同方向,然后按照给定的指令顺序进行操作。Bob 给机器人编程时,写下了一串整数,由1,2,3,4其中若干个组成。迷宫中也只有一个出口,用字符"E"表示。注意边界判断,xm的时候都不行,还有遇到障碍物a[x][y]=='#'的时候,直接return。空单元格由字符"."表示,障碍物由"#"表示。迷宫中的每个字符都是".", "#", "S"或"E"。输出一个整数,表示能够让机器人到达出口的方向映射方案数。迷宫中将恰好有一个"S"和一个"E"。

2024-03-16 21:47:11 620

原创 支撑数的支撑数

在已知的一组整数中,有这样一种数非常怪,它们不在第一个,也不在最后一个,而且刚好都比左边和右边相邻的数大,我们将这样的数称为支撑数。整体的思路就是while循环,找支撑数,记录在一个s数组里面,但是要从第二个元素找到倒数第二个元素,因为支撑数不在末尾也不再开头,如果一个没找到又是第一遍循环,直接输出no,说明这堆数根本没有支撑数,不是第一遍循环输出当前的数组,以上都不满足就用s数组替换a数组中所有的元素,元素个数 n 进行更新。一行,若干个整数,表示经过查找后再无支撑数的一组数。这题应该没什么问题吧。

2024-03-12 18:44:51 618

原创 Anya and Cubes

然后主函数里面还有个小细节,建一个数组f,记录1~19的阶乘,为什么是十九呢,因为大于等于19的数的阶乘已经超出S的数据范围了。这里定义两个函数 dfs 和 dfs2,dfs用于找前一半并且记录,dfs2用于求出方案数。但是,这样最大的情况下就要搜索3^25次,是一个特别大的数,肯定要超时。首先,我们想到的思路肯定是深搜,就是三种选择,选原数,不选和选阶乘。如果now>end,就是遍历完了,vis记录一下,结束。这里写四个参数,now,end,sum和used。如果sum>s,就是超过了,不满足,剪掉。

2024-03-10 12:05:45 359

原创 长度最小的子数组

找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [num1,num2,num3,num4......num (n)],并返回其长度。因为要找的是最短的,所以只要在满足的情况下,距离越短越好,所以就用while循环,一直到如果移动之后不满足,就不移动这一步。这个时候,如果现在的值(s[r]-s[l-1])大于等于了t,就开始变 l。输出一个整数,表示满足题目要求的序列最小长度,若不存在,输出0。循环完之后,就用mn记录一下最小值,在判断后面的,把 r 加一。先定义两个指针 l 和 r。

2024-03-07 20:32:04 391

原创 单调栈模版题

把栈顶存入另一个栈 k 中(因为我们是到这入栈的,所以输出得反过来),这里要注意,如果head==0,就说明a[i]已经把所有元素都噶掉了,就将0压入k里面,否则就是将n-t[head]+1压入k(因为这里是倒着来的)定义函数 f(i) 代表数列中第 i 个元素之后第一个大于 ai​ 的元素的下标,若不存在,则 f(i)=0。单调栈,顾名思义,就是一个保持单调性的栈,这时大体分为两种,单调递增和单调递减。那么,这个时候,比ai小的元素就没用了,所以,栈顶如果比ai小,就踢掉。第一行一个正整数 n。

2024-03-03 10:21:13 339

原创 八数码难题

在 3×3 的棋盘上,摆有八个棋子,每个棋子上标有 1 至 8 的某一数字。要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了使题目简单,设目标状态为 123804765),找到一种最少步骤的移动方法,实现从初始布局到目标布局的转变。接着,就要解决一个问题,就是如何交换元素,首先找到‘0’的位置,用变量k存储下标,接着就是要作为一个表格来交换。循环中用一个字符串t存储当前状态(队头),队头出队,判断如果满足条件,就输出,结束函数。输入初始状态,一行九个数字,空格用 0 表示。

2024-02-26 21:36:33 300 1

原创 图书管理员

每位借书的读者手中有一个需求码,这个需求码也是一个正整数。小 D 刚刚当上图书馆的管理员,她知道图书馆里所有书的图书编码,她请你帮她写一个程序,对于每一位读者,求出他所需要的书中图书编码最小的那本书,如果没有他需要的书,请输出。q 行,每行包含一个整数,如果存在第 i 个读者所需要的书,则在第 i 行输出第 i 个读者所需要的书中图书编码最小的那本书的图书编码,否则输出−1。接下来的 q 行,每行包含两个正整数,以一个空格分开,第一个正整数代表图书馆 里读者的需求码的长度,第二个正整数代表读者的需求码。

2024-02-23 20:59:43 364 1

原创 构建三角形

在你的手上有一个正N边型的图形,这个正N边型的各条边的编号分别为1,2,3……N。在第i条边上,有Ai个特殊点将第i条边按长度平均分为Ai-1份。举个例子,假设现在一个正N边型的图形在这个图中,A=[3,1,4,6],最上边这条边的编号为1。此时,你需要构建出尽可能多的非相交三角形出来。现在,给你这个正N边型的相关数据,请你计算出,这个正N边型最多可以构建出多少个满足条件的三角形。

2024-02-18 21:02:10 347 1

原创 图的遍历-最大编号

一个for循环,把每个节点遍历一遍,如果有边(a[bt][i]==1)且没走过,就记录一下最大值,接着调用一遍深搜函数。给出 N 个点,M 条边的有向图,对于每个点 v,求 A(v) 表示从点 v 出发,能到达的编号最大的点。接下来 M 行,每行 2 个整数 Ui,Vi,表示边(Ui,Vi)。主函数里面用for循环找到每一个节点,然后调用函数,输出最大值就行了。一行 N 个整数 A(1),A(2),…第 1 行 2 个整数 N,M,表示点数和边数。然后我们就用一个搜索来把图遍历一遍。

2024-02-02 15:45:43 369

原创 滑动窗口

我们要保持队头始终是区间内的最小值(保持队列单调性),就得在元素入队时加上一个while循环,如果a[i] (a[i]指入队元素) 比队尾小,就破坏了队列的单调性,但是a[i]必须入队,就要把队尾元素删除,直到队列里的元素都被他挤了出去或是找到了合适的位置(a[i]>=了队头)为止。接着,下面要做一个判断,就是如果入队的元素已经达到了m个,就要进行输出了,但对于大于m个元素了,就要再写一个while循环,维护区间长度只有m个。你的任务是确定滑动窗口位于每个位置时,窗口中的最大值和最小值。

2024-02-01 16:57:08 336 1

原创 二叉树的深度

给出一个 n 个结点的二叉树,请求出树的深度。

2024-01-19 10:21:14 307 1

原创 二叉树的遍历

给出一个 n 个结点的二叉树,请求出二叉树的前序遍历,中序遍历和后序遍历。

2024-01-13 20:23:06 504 1

原创 图的遍历

现有一无向图形结构,输出该图形的深度遍历和广度遍历结果。输入第一行为 n 和 m,表示有 n个顶点,编号从 1到 n,m 表示有该图有 m 条边,接下来 m 行,每行两个整数 i 和 j,表示顶点 i到顶点 j有一条边。输出为两行,第一行为深度遍历的结果,第二行为广度遍历的结果,每个顶点间用一个‘-’符号隔开,假定每次都从顶点1开始遍历,且优先遍历编号低的,每种遍历只需要一种遍历结果。

2024-01-07 20:36:30 546 1

原创 火柴棍问题

只需拿一个变量 t 记录当前最大正方形的边长, 第t*t+1个正方形就是右上角,第t*t+t个正方形就是右下角,拼完一个正方形, t 就加一。这道题的真正规律是:不停地向正方形的方向拼凑,正方形的右上角和右下角加3,其余地方都加2。那么,这道题规律是不是从第3个正方形开始,依次+2+3+2+3呢?这段代码的输出是25,但是9个方形可以按照如下摆放,只需24个。这道题乍眼一看,是不是一道找规律的题目呢?上面是正方形个数,下面是需要的材料个数。一个正整数N,表示需要的方型单元。这下就找到规律了吗?

2024-01-02 20:49:54 385 1

原创 动态规划-导弹拦截

某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是不大于 30000 的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。一行,为导弹依次飞来的高度。

2023-12-24 17:28:50 619

原创 动态规划-最长上升子序列

给出一个由 n(n≤5000) 个不超过 10^6106 的正整数组成的序列。第一行,一个整数 n,表示序列长度。第二行有 n 个整数,表示这个序列。遇到动态规划的题目,首先就得画表格。取出一些数字排在一起,这些数字是。最长上升子序列是指,从原序列中。然后就用表格来推状态转移方程。按照题目的意思画一个表格。如果比前面的数大,就+1。

2023-12-24 12:31:07 309 1

原创 高精度减法

也是按照减法竖式的过程,一步一步地相减,但是提前要做个比较,如果当前位小于减数的当前位,就要向前一位借一当十。10的10086次方肯定是超出了long long的数据范围了,所以说,这道题就要用到高精度。如果返回值是1,就用b-a,输出负号,如果相等,输出0。不过这之前先得做个判断,比较哪个数更大,因为如果后面的数大于前面的数,就得输出个负数。比如说我们输入200和199,他会输出001,但要求是1,所以还要做一步操作,去零。这时,我们不拿发现b大于a的情况下,只需要在b-a前面输出a个负号就行了。

2023-12-23 11:35:34 411 1

空空如也

空空如也

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

TA关注的人

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