![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hwjs
你板子冒烟了
这个作者很懒,什么都没留下…
展开
-
可信 专业级科一
有快慢指针法:比如判断链表是否存在环,递增数组去除多于元素,去除数组中指定值的元素。需要考察首尾对应位置的,都可以用双指针。原创 2023-01-22 14:33:28 · 1572 阅读 · 1 评论 -
JJJ:leetcode 刷题心得
2. 两数相加(中等)一开始是想用2个int或者long,甚至long long来存储两个链表中的数,然而均不能满足用例,就算是long long,也存在超范围的用例。因此只能使用加法,来一个一个对链表节点所表示的数值进行相加。在循环过程中,每对节点加起来得到的和之后,在进行创建新节点,来存放这个和。做到有需要的时候再创建节点,不需要的时候不创建节点。另外通过设置前后指针来达到两个目的:1、确定头节点。2、完成链表节点的链接关系,即前一个节点的next成员的赋值。另外创建新节点的条件:不仅仅是a链原创 2022-05-04 01:40:36 · 644 阅读 · 0 评论 -
HJ100 等差数列
描述功能:等差数列 2,5,8,11,14。。。。输入:正整数N >0输出:求等差数列前N项和本题为多组输入,请使用while(cin>>)等形式读取数据输入描述:输入一个正整数。输出描述:输出一个相加后的整数。示例1输入:2复制输出:7#include <stdio.h>int main(void){ int num; while(scanf("%d", &num) != EOF) {原创 2021-10-03 15:45:36 · 110 阅读 · 0 评论 -
HJ99 自守数(一把过)
描述自守数是指一个数的平方的尾数等于该数自身的自然数。例如:25^2 = 625,76^2 = 5776,9376^2 = 87909376。请求出n以内的自守数的个数接口说明/*功能: 求出n以内的自守数的个数输入参数:int n返回值:n以内自守数的数量。*/public static int CalcAutomorphicNumbers( int n){/*在这里实现功能*/return 0;}本题有多组输入数据,请使用while(cin>>原创 2021-10-03 15:45:27 · 562 阅读 · 0 评论 -
HJ97 记负均正(一开始审题不清粗心,导致错误)
描述首先输入要输入的整数个数n,然后输入n个整数。输出为n个整数中负数的个数,和所有正整数的平均值,结果保留一位小数。0即不是正整数,也不是负数,不计入计算输入描述:本题有多组输入用例。首先输入一个正整数n,然后输入n个整数。输出描述:输出负数的个数,和所有正整数的平均值。示例1输入:51 2 3 4 510 1 2 3 4 5 6 7 8 9 0复制输出:0 3.00 5.0复制示例2输入:31884 282 -241 132 37 192 -140 -1原创 2021-10-03 15:45:14 · 480 阅读 · 0 评论 -
HJ96 表示数字
描述将一个字符中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。注意:本题有多组样例输入。输入描述:输入一个字符串输出描述:字符中所有出现的数字前后加上符号“*”,其他字符保持不变示例1输入:Jkdi234klowe90a35151复制输出:Jkdi*234*klowe*90*a*3**5151*起初思路不严谨,在遍历输入的子串时。可以选择仅在数字时判断或者仅在非数字时判断。若是判断的时机包含二者的话,很容易造成逻辑的混乱。在遇到数字时,判断是原创 2021-10-03 15:44:56 · 433 阅读 · 0 评论 -
HJ95 人民币转换
描述考试题目和要点:1、中文大写金额数字前应标明“人民币”字样。中文大写金额数字应用壹、贰、叁、肆、伍、陆、柒、捌、玖、拾、佰、仟、万、亿、元、角、分、零、整等字样填写。2、中文大写金额数字到“元”为止的,在“元”之后,应写“整字,如532.00应写成“人民币伍佰叁拾贰元整”。在”角“和”分“后面不写”整字。3、阿拉伯数字中间有“0”时,中文大写要写“零”字,阿拉伯数字中间连续有几个“0”时,中文大写金额中间只写一个“零”字,如6007.14,应写成“人民币陆仟零柒元壹角肆分“。4、10应写原创 2021-10-03 15:44:37 · 522 阅读 · 0 评论 -
HJ94 记票统计(因为数组内存未足够分配而溢出)
描述请实现一个计票统计系统。你会收到很多投票,其中有合法的也有不合法的,请统计每个候选人得票的数量以及不合法的票数。本题有多组样例输入。输入描述:输入候选人的人数n,第二行输入n个候选人的名字(均为大写字母的字符串),第三行输入投票人的人数,第四行输入投票。输出描述:按照输入的顺序,每行输出候选人的名字和得票数量,最后一行输出不合法的票数。示例1输入:4A B C D8A D E CF A GG A B复制输出:A : 3B : 1C : 0D : 1Invalid原创 2021-10-03 10:21:07 · 386 阅读 · 0 评论 -
HJ93 数组分组
描述输入int型数组,询问该数组能否分成两组,使得两组中各元素加起来的和相等,并且,所有5的倍数必须在其中一个组中,所有3的倍数在另一个组中(不包括5的倍数),能满足以上条件,输出true;不满足时输出false。本题含有多组样例输入。输入描述:第一行是数据个数,第二行是输入的数据输出描述:返回true或者false示例1输入:41 5 -5 133 5 8复制输出:truefalse复制说明:第一个样例:第一组:5 -5 1第二组:1 第二个样例:由于3和5原创 2021-10-03 10:20:57 · 169 阅读 · 0 评论 -
HJ92 在字符串中找出连续最长的数字串
描述输入一个字符串,返回其最长的数字子串,以及其长度。若有多个最长的数字子串,则将它们全部输出(按原字符串的相对位置)本题含有多组样例输入。输入描述:输入一个字符串。1<=len(字符串)<=200输出描述:输出字符串中最长的数字字符串和它的长度,中间用逗号间隔。如果有相同长度的串,则要一块儿输出(中间不要输出空格)。示例1输入:abcd12345ed125ss123058789a8a72a6a5yy98y65ee1r2复制输出:123058789,972986原创 2021-10-03 10:20:46 · 383 阅读 · 0 评论 -
HJ91 走方格的方案数
描述请计算n*m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。本题含有多组样例输入。输入描述:每组样例输入两个正整数n和m,用空格隔开。(1≤n,m≤8)输出描述:每组样例输出一行结果示例1输入:2 21 2复制输出:63#include <stdio.h>int calcu(int a){ int i; int ret =原创 2021-10-02 20:05:37 · 265 阅读 · 0 评论 -
HJ90 合法IP(一把过)
描述现在IPV4下用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此不需要用正号出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。现在需要你用程序来判断IP是否合法。注意本题有多组样例输入。输入描述:输入一个ip地址,保证是xx.xx.xx.xx的形式(xx为整数)输出描述:返回判断的结果YES or NO示例1输入:10.138.15.1原创 2021-10-02 19:32:27 · 603 阅读 · 0 评论 -
HJ89 24点运算(学习效率高的方法, 重点复习,第二种递归实现全排序判断)
描述计算24点是一种扑克牌益智游戏,随机抽出4张扑克牌,通过加(+),减(-),乘(*), 除(/)四种运算法则计算得到整数24,本问题中,扑克牌通过如下字符或者字符串表示,其中,小写joker表示小王,大写JOKER表示大王:3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER本程序要求实现:输入4张牌,输出一个算式,算式的结果为24点。详细说明:1.运算只考虑加减乘除运算,没有阶乘等特殊运算符号,没有括号,友情提醒,整数除法要当心,是属于整除,比如2/3=0,3原创 2021-10-02 16:04:53 · 471 阅读 · 0 评论 -
HJ88 扑克牌大小
描述扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A、2各4张,小王1张,大王1张。牌面从小到大用如下字符和字符串表示(其中,小写joker表示小王,大写JOKER表示大王):3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER输入两手牌,两手牌之间用"-"连接,每手牌的每张牌以空格分隔,"-"两边没有空格,如:4 4 4 4-joker JOKER。请比较两手牌大小,输出较大的牌,如果不存在比较关系则输出ERROR。基本规则:(1)输入每手牌可能是个子、对子原创 2021-10-02 14:24:15 · 275 阅读 · 0 评论 -
HJ87 密码强度等级(一把过)
描述密码按如下规则进行计分,并根据不同的得分为密码进行安全等级划分。一、密码长度:5 分: 小于等于4 个字符10 分: 5 到7 字符25 分: 大于等于8 个字符二、字母:0 分: 没有字母10 分: 全都是小(大)写字母20 分: 大小写混合字母三、数字:0 分: 没有数字10 分: 1 个数字20 分: 大于1 个数字四、符号:0 分: 没有符号10 分: 1 个符号25 分: 大于1 个符号五、奖励:2 分: 字母和数字原创 2021-10-02 11:29:31 · 747 阅读 · 0 评论 -
HJ86 求最大连续bit数(适当关注)
描述求一个int类型数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1本题含有多组样例输入。输入描述:输入一个int类型数字输出描述:输出转成二进制之后连续1的个数示例1输入:35200复制输出:212说明:3的二进制表示是11,最多有2个连续的1。5的二进制表示是101,最多只有1个连续的1。#include <stdio.h>#if 0#define dbg printf#else#define原创 2021-10-02 10:38:04 · 121 阅读 · 0 评论 -
HJ85 最长回文子串(一把过,遍历每个子串)
描述给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。所谓回文串,指左右对称的字符串。所谓子串,指一个字符串删掉其部分前缀和后缀(也可以不删)的字符串(注意:记得加上while处理多个测试用例)输入描述:输入一个仅包含小写字母的字符串输出描述:返回最长回文子串的长度示例1输入:cdabbacc输出:4复制说明:abba为最长的回文子串 #include <stdio.h>#include <string.h>int judge原创 2021-10-02 10:05:02 · 218 阅读 · 0 评论 -
HJ84 统计大写字母个数(很简单,一把过,关键是判断换行)
描述找出给定字符串中大写字符(即'A'-'Z')的个数。输入描述:本题含有多组样例输入对于每组样例,输入一行,代表待统计的字符串输出描述:对于每组样例,输出一个整数,代表字符串中大写字母的个数示例1输入:add123#$%#%#O150175017(&^%&$vabovbao输出:10#include <stdio.h>int main(void){ char a; int cnt[64] = {0}; int原创 2021-10-02 09:44:18 · 311 阅读 · 0 评论 -
HJ83 二维数组操作(一把过)
描述有一个大小的数据表,你会依次进行以下5种操作:1.输入和,初始化大小的表格。2.输入x_1x 1 、y_1y 1 、x_2x 2 、y_2y 2 ,交换坐标在(x_1,y_1)(x 1 ,y 1 )和(x_2,y_2)(x 2 ,y 2 )的两个数。3.输入,在第行上方添加一行。4.输入,在第列左边添加一列。5.输入、,查找坐标为的单元格的值。请编写程序,判断对表格的各种操作是否合法。详细要求:1.数据表的最大规格为9原创 2021-10-02 09:37:37 · 811 阅读 · 0 评论 -
HJ82 将真分数分解为埃及分数(需要知道求埃及数的数学方法)
描述分子为1的分数称为埃及分数。现输入一个真分数(分子比分母小的分数,叫做真分数),请将该分数分解为埃及分数。如:8/11 = 1/2+1/5+1/55+1/110。注:真分数指分子小于分母的分数,分子和分母有可能gcd不为1!如有多个解,请输出任意一个。请注意本题含有多组样例输入!输入描述:输入一个真分数,String型输出描述:输出分解后的string示例1输入:8/112/4输出:1/2+1/5+1/55+1/1101/3+1/6说明:第二个样例直接输出1原创 2021-10-02 00:49:01 · 1105 阅读 · 0 评论 -
HJ81 字符串字符匹配(简单,一把过)
描述判断短字符串S中的所有字符是否在长字符串T中全部出现。请注意本题有多组样例输入。数据范围:1<=len(S),len(T)<=200输入描述:输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。输出描述:如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。示例1输入:bcabcapgmlivuembutyjmrcuneguxmsqwjslqvfmwbcaabc输出:true原创 2021-10-01 22:10:20 · 907 阅读 · 0 评论 -
HJ80 整型数组合并(一把过)
描述题目标题:将两个整型数组按照升序合并,并且过滤掉重复数组元素。输出时相邻两数之间没有空格。请注意本题有多组样例。输入描述:输入说明,按下列顺序输入:1 输入第一个数组的个数2 输入第一个数组的数值3 输入第二个数组的个数4 输入第二个数组的数值输出描述:输出合并之后的数组示例1输入:31 2 54-1 0 3 2输出:-101235#include <stdio.h>#include <stdlib.h>#if 1原创 2021-10-01 21:01:21 · 518 阅读 · 0 评论 -
HJ77 火车进站(不会,重点复习)
描述给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号,火车站只有一个方向进出,同时停靠在火车站的列车中,只有后进站的出站了,先进站的才能出站。要求输出所有火车出站的方案,以字典序排序输出。输入描述:有多组测试用例,每一组第一行输入一个正整数N(0输出描述:输出以字典序从小到大排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行,具体见sample。示例1输入:31 2 3复制输出:1 2 31 3原创 2021-10-01 20:09:30 · 1052 阅读 · 0 评论 -
HJ76 尼科彻斯定理(一把过,太简单)
描述验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。例如:1^3=12^3=3+53^3=7+9+114^3=13+15+17+19输入一个正整数m(m≤100),将m的立方写成m个连续奇数之和的形式输出。本题含有多组输入数据。输入描述:输入一个int整数输出描述:输出分解后的string示例1输入:6输出:31+33+35+37+39+41验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。#include原创 2021-10-01 12:28:09 · 364 阅读 · 0 评论 -
HJ75 公共子串计算(一把过,遍历其中一个串的各个子串即可)
描述给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。输入描述:输入两个只包含小写字母的字符串输出描述:输出一个整数,代表最大公共子串的长度示例1输入:asdfaswerasdfaswer输出:6#include <stdio.h>#include <string.h>#if 0#define dbg printf#else#define d原创 2021-10-01 11:25:16 · 141 阅读 · 0 评论 -
HJ74 参数解析(含空格的字符串输入)
描述在命令行输入如下命令:xcopy /s c:\ d:\,各个参数如下:参数1:命令字xcopy参数2:字符串/s参数3:字符串c:\参数4: 字符串d:\请编写一个参数解析程序,实现将命令行各个参数解析出来。解析规则:1.参数分隔符为空格2.对于用""包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy /s "C:\program files" "d:\"时,参数仍然是4个,第3个参数应该是字符串C:\program files,而不原创 2021-10-01 10:49:46 · 459 阅读 · 0 评论 -
HJ73 计算日期到天数转换(一把过)
描述根据输入的日期,计算是这一年的第几天。输入描述:输入一行,每行空格分割,分别是年,月,日输出描述:输出是这一年的第几天示例1输入:2012 12 31复制输出:366复制示例2输入:1982 3 4输出:63#include <stdio.h>int a[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};int b[12] = {31, 29, 31, 30, 31, 30, 31原创 2021-10-01 10:18:44 · 171 阅读 · 0 评论 -
HJ72 百钱买百鸡问题(一把过)
描述公元前五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?详细描述:接口说明原型:int GetResult(vector &list)输入参数: 无输出参数(指针指向的内存区域保证有效): list 鸡翁、鸡母、鸡雏组合的列表返回值: -1 失败 0 成功 输入描述:输入任何一个整数,即可运行程原创 2021-10-01 09:58:45 · 209 阅读 · 0 评论 -
HJ71 字符串通配符(重点复习)
描述问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。要求:实现如下2个通配符:*:匹配0个或以上的字符(字符由英文字母,数字0-9和 '.' 组成,下同)?:匹配1个字符注意:匹配时不区分大小写。输入:通配符表达式;一组字符串。输出:返回不区分大小写的匹配结果,匹配成功输出true,匹配失败输出false本题含有多组样例输入!输入描述:先输入一个带有通配符的字符串,再输入一个需要匹配的字符串输出原创 2021-10-01 01:05:59 · 560 阅读 · 0 评论 -
HJ70 矩阵乘法计算量估算(没做出来,参考别人的)
描述矩阵乘法的运算量与矩阵乘法的顺序强相关。例如:A是一个50×10的矩阵,B是10×20的矩阵,C是20×5的矩阵计算A*B*C有两种顺序:((AB)C)或者(A(BC)),前者需要计算15000次乘法,后者只需要3500次。编写程序计算不同的计算顺序需要进行的乘法次数。本题含有多组样例输入!输入描述:输入多行,先输入要计算乘法的矩阵个数n,每个矩阵的行数,列数,总共2n的数,最后输入要计算的法则计算的法则为一个字符串,仅由左右括号和大写字母('A'~'Z')组成,保证括号原创 2021-09-30 22:52:22 · 253 阅读 · 0 评论 -
HJ69 矩阵乘法(一把过)
描述如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的矩阵的大小不超过100*100输入描述:输入包含多组数据,每组数据包含:第一行包含一个正整数x,代表第一个矩阵的行数第二行包含一个正整数y,代表第一个矩阵的列数和第二个矩阵的行数第三行包含一个正整数z,代表第二个矩阵的列数之后x行,每行y个整数,代表第一个矩阵的值之后y行,每行z个整数,代表第二个矩阵的值输出描述:对于每组输入数据,输出x行,每行原创 2021-09-30 15:54:57 · 384 阅读 · 0 评论 -
HJ68 成绩排序
描述查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩都按先录入排列在前的规则处理。例示:jack 70peter 96Tom 70smith 67从高到低 成绩peter 96jack 70Tom 70smith 67从低到高smith 67jack 70Tom 70peter 96注:0代表从高到原创 2021-09-30 15:13:05 · 449 阅读 · 0 评论 -
HJ67 24点游戏算法
描述问题描述:给出4个1-10的数字,通过加减乘除,得到数字为24就算胜利输入:4个1-10的数字。[数字允许重复,但每个数字仅允许使用一次,测试用例保证无异常数字。输出:true or false本题含有多组样例输入。输入描述:输入4个int整数输出描述:返回能否得到24点,能输出true,不能输出false示例1输入:7 2 1 10复制输出:true除法要判断是否有一方为0,有的话直接返回结果是0即可出发还要判断是否整除,不能的话本步直接失败#inclu原创 2021-09-30 09:59:50 · 504 阅读 · 0 评论 -
HJ66 配置文件恢复
审题,利用范例来验证思路理好了在写#include <stdio.h>#include <string.h>#if 0#define dbg printf#else#define dbg#endifchar *cmd[6] = {"reset", "reset board", "board add", "board delete", "reboot backplane", "backplane abort"};void execu(int index)..原创 2021-09-30 08:57:21 · 661 阅读 · 0 评论 -
HJ62 查找输入整数二进制中1的个数(一把过,幼儿园难度)
描述输入一个正整数,计算它在二进制下的1的个数。注意多组输入输出!!!!!!输入描述:输入一个整数输出描述:计算整数二进制中1的个数示例1输入:5输出:2说明:5的二进制表示是101,有2个1 #include <stdio.h>int main(void){ unsigned num; int cnt; int i; while(scanf("%u", &num) != EOF) {原创 2021-09-29 23:40:15 · 827 阅读 · 0 评论 -
HJ65 查找两个字符串a,b中的最长公共子串(一把过)
描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!本题含有多组输入数据!输入描述:输入两个字符串输出描述:返回重复出现的字符示例1输入:abcdefghijklmnopabcsafjklmnopqrstuvw输出:jklmnop#include <stdio.h>#include <string.h>#if 0#d原创 2021-09-29 23:30:56 · 918 阅读 · 0 评论 -
HJ64 MP3光标位置
#include <stdio.h>#include <string.h>#if 0#define dbg printf#else#define dbg#endifint main(void){char str[64] = {0};int num;int val;int i, j;int tmp;val = 0;scanf("%d", &num);scanf("%s", str);for(i=0; i<strlen(str); i++)原创 2021-09-29 22:43:19 · 187 阅读 · 0 评论 -
HJ63 DNA序列
描述一个DNA序列由A/C/G/T四个字母的排列组合组成。G和C的比例(定义为GC-Ratio)是序列中G和C两个字母的总的出现次数除以总的字母数目(也就是序列长度)。在基因工程中,这个比例非常重要。因为高的GC-Ratio可能是基因的起始点。给定一个很长的DNA序列,以及限定的子串长度N,请帮助研究人员在给出的DNA序列中从左往右找出GC-Ratio最高且长度为N的第一个子串。DNA序列为ACGT的子串有:ACG,CG,CGT等等,但是没有AGT,CT等等输入描述:输入一个string型基因序原创 2021-09-29 16:08:46 · 233 阅读 · 0 评论 -
HJ61 放苹果(递归)
描述题目描述把m个同样的苹果放在n个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。数据范围:0<=m<=10,1<=n<=10。本题含有多组样例输入。输入描述:输入两个int整数输出描述:输出结果,int型示例1输入:7 3输出:8每一次求解可以分解为两种结果的和:1、留1个空盘,func(m, n-1),前提是n>1。终止条件是n==1,直接返回12、不留空盘,fu原创 2021-09-29 15:23:36 · 141 阅读 · 0 评论 -
HJ60 查找组成一个偶数最接近的两个素数(一把过)
描述任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。本题含有多组样例输入。输入描述:输入一个偶数输出描述:输出两个素数示例1输入:20输出:713注意1不是素数。#include <stdio.h>int abs_minus(int a, int b){ if(a > b) { return (a-b); } else原创 2021-09-29 12:35:29 · 191 阅读 · 0 评论