自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HJ77 火车进站

给定一个正整数N代表火车数量,0

2024-02-03 18:38:22 341

原创 HJ54 表达式求值

输入字符串长度不超过 100 ,合法的字符包括 ”+, -, *, /, (, )” , ”0-9”。数据范围:运算过程中和最终结果均满足∣val∣≤2^31−1 ,即只进行整型运算,确保输入的表达式合法。给定一个字符串描述的算术表达式,计算出结果值。

2024-02-01 17:16:35 335

原创 HJ85 最长回文子串

所谓子串,指一个字符串删掉其部分前缀和后缀(也可以不删)的字符串。给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。进阶:时间复杂度:O(n) ,空间复杂度:O(n)数据范围:字符串长度1≤s≤350。所谓回文串,指左右对称的字符串。输入一个仅包含小写字母的字符串。abba为最长的回文子串。返回最长回文子串的长度。

2024-02-01 16:32:52 288

原创 HJ75 公共子串计算

注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。进阶:时间复杂度:O(n^3),空间复杂度:O(n)数据范围:字符串长度:1≤s≤150。输出一个整数,代表最大公共子串的长度。输入两个只包含小写字母的字符串。

2024-02-01 14:13:48 225

原创 HJ65 查找两个字符串a,b中的最长公共子串

注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。进阶:时间复杂度:O(n^3) ,空间复杂度:O(n)数据范围:字符串长度1≤length≤300。

2024-02-01 13:58:13 241

原创 HJ88 扑克牌大小

扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A、2各4张,小王1张,大王1张。(2)除了炸弹和对王可以和所有牌比较之外,其他类型的牌只能跟相同类型的存在比较关系(如,对子跟对子比较,三个跟三个比较),不考虑拆牌情况(如:将对子拆分成个子);输入两手牌,两手牌之间用"-"连接,每手牌的每张牌以空格分隔,"-"两边没有空格,如:4 4 4 4-joker JOKER。输入两手牌,两手牌之间用"-"连接,每手牌的每张牌以空格分隔,"-"两边没有空格,如 4 4 4 4-joker JOKER。

2024-01-30 19:20:43 409

原创 HJ25 数据分类处理

序列I中包含6的元素有:I[1]的值为456、I[2]的值为786、I[4]的值为46、I[8]的值为665、I[9]的值为453456、I[11]的值为456、I[12]的值为786。序列I中包含3的元素有:I[0]的值为123、I[3]的值为453、I[7]的值为3、I[9]的值为453456、I[13]的值为453、I[14]的值为123。序列I:15,123,456,786,453,46,7,5,3,665,453456,745,456,786,453,123(第一个15表明后续有15个整数)

2024-01-30 16:06:52 437

原创 HJ42 学英语

3.公式:百万以下千以上的数 X thousand X, 10亿以下百万以上的数:X million X thousand X, 10 亿以上的数:X billion X million X thousand X. 每个X分别代表三位数或两位数或一位数。4.在英式英语中百位数和十位数之间要加and,美式英语中则会省略,我们这个题目采用加上and,百分位为零的话,这道题目我们省略and。关键字提示:and,billion,million,thousand,hundred。数据范围:1≤n≤2000000。

2024-01-30 12:25:13 318

原创 HJ39 判断两个IP是否属于同一子网

IP地址是由4个0-255之间的整数构成的,用"."符号相连。二进制的IP地址格式有32位,例如:10000011,01101011,00000011,00011000;每八位用十进制表示就是131.107.3.24子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。子网掩码与IP地址结构相同,是32位二进制数,由1和0组成,且1和0分别连续,其中网络号部分全为“1”和主机号部分全为“0”。你可以简单的认为子网掩码是一串连续的1和一串连续的0拼接而成的32位二进制数,左边部分都是1,右边部分

2024-01-29 21:00:43 1844

原创 HJ30 字符串合并处理

第二步:对合并后的字符串进行排序,要求为:下标为奇数的字符和下标为偶数的字符分别从小到大排序。例如刚刚得到的字符串“decfab”,分别对下标为偶数的字符'd'、'c'、'a'和下标为奇数的字符'e'、'f'、'b'进行排序(生成 'a'、'c'、'd' 和 'b' 、'e' 、'f'),再依次分别放回原串中的偶数位和奇数位,新字符串变为“abcedf”转换后的字符是 '3'。转换后的字符为 '2'。第三步:对排序后的字符串中的'0'~'9'、'A'~'F'和'a'~'f'字符,需要进行转换操作。

2024-01-29 18:48:07 394

原创 HJ19 简单错误记录

2、 超过16个字符的文件名称,只记录文件的最后有效16个字符;3、 输入的文件可能带路径,记录文件名称不能带路径。

2024-01-29 16:58:07 268

原创 HJ50 四则运算

保证字符串中的有效字符包括[‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’。数据范围:表达式计算结果和过程中满足 ∣val∣≤1000 ,字符串长度满足 1≤n≤1000。输入一个表达式(用字符串表示),求这个表达式的值。

2024-01-29 14:57:59 261

原创 HJ70 矩阵乘法计算量估算

计算A*B*C有两种顺序:((AB)C)或者(A(BC)),前者需要计算15000次乘法,后者只需要3500次。计算的法则为一个字符串,仅由左右括号和大写字母('A'~'Z')组成,保证括号是匹配的且输入合法!输入多行,先输入要计算乘法的矩阵个数n,每个矩阵的行数,列数,总共2n的数,最后输入要计算的法则。数据范围:矩阵个数:1≤n≤15 ,行列数:1≤rowi​,coli​≤100 ,A是一个50×10的矩阵,B是10×20的矩阵,C是20×5的矩阵。进阶:时间复杂度:O(n) ,空间复杂度:O(n)

2024-01-27 18:45:54 426

原创 HJ74 参数解析

2.对于用""包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy /s "C:\\program files" "d:\"时,参数仍然是4个,第3个参数应该是字符串C:\\program files,而不是C:\\program,注意输出参数时,需要将""去掉,引号不存在嵌套情况。请编写一个参数解析程序,实现将命令行各个参数解析出来。进阶:时间复杂度:O(n) ,空间复杂度:O(n)输出参数个数,分解后的参数,每个参数都独占一行。参数3:字符串c:\\。1.参数分隔符为空格。

2024-01-26 22:04:16 230

原创 HJ43 迷宫问题

它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的路线。入口点为[0,0],既第一格是可以走的路。输入两个整数,分别表示二维数组的行数,列数。再输入相应的数组,其中的1表示墙壁,0表示可以走的路。数据保证有唯一解,不考虑有多解的情况,即迷宫只有一条通道。数据范围: 2≤n,m≤10 , 输入的内容只包含 0≤val≤1。左上角到右下角的最短路径,格式如样例所示。

2024-01-26 18:01:11 463

原创 HJ36 字符串加密

有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中包含有重复的字母,只保留第1个,将所得结果作为新字母表开头,并将新建立的字母表中未出现的字母按照正常字母表顺序加入新字母表。在对信息进行加密时,信息中的每个字母被固定于顶上那行,并用下面那行的对应字母一一取代原文的字母(字母字符的大小写状态应该保留)。数据范围:1≤n≤100 ,保证输入的字符串中仅包含小写字母。请实现下述接口,通过指定的密匙和明文得到密文。

2024-01-26 14:09:59 298

原创 HJ33 整数与IP地址间的转换

组合起来即为:00001010 00000000 00000011 11000001,转换为10进制数就是:167773121,即该IP地址转换后的数字就是它了。原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成。每段数字 相对应的二进制数。举例:一个ip地址为10.0.3.193。数据范围:保证输入的是合法的 IP 序列。1 输出转换成10进制的IP地址。2 输入10进制型的IP地址。2 输出转换后的IP地址。

2024-01-26 13:34:13 371

原创 HJ32 密码截取

Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathcer的工作量实在是太大了,他只能向电脑高手求助,你能帮Catcher找出最长的有效密码串吗?数据范围:字符串长度满足 1≤n≤2500。输入一个字符串(字符串的长度不超过2500)返回有效密码串的最大长度。

2024-01-26 12:19:06 219

原创 HJ24 合唱队

由于不允许改变队列元素的先后顺序,所以最终剩下的队列应该为186 200 160 130或150 200 160 130。用例两行数据,第一行是同学的总数 N ,第二行是 N 位同学的身高,以空格隔开。数据范围:1≤n≤3000。最少需要几位同学出列。

2024-01-24 22:25:04 363

原创 HJ67 24点游戏算法

给出4个1-10的数字,通过加减乘除运算,得到数字为24就算胜利,除法指实数除法运算,运算符仅允许出现在两个数字之间,本题对数字选取顺序无要求,但每个数字仅允许使用一次,且需考虑括号运算。此题允许数字重复,如3 3 4 4为合法输入,此输入一共有两个3,但是每个数字只允许使用一次,则运算过程中两个3都被选取并进行对应的计算操作。对于每组案例,输出一行表示能否得到24点,能输出true,不能输出false。读入4个[1,10]的整数,数字允许重复,测试用例保证无异常数字。

2024-01-24 14:30:56 408

原创 HJ27 查找兄弟单词

第一行输出查找到x的兄弟单词的个数m 第二行输出查找到的按照字典顺序排序后的第k个兄弟单词,没有符合第k个的话则不用输出。定义一个单词的“兄弟单词”为:交换该单词字母顺序(注:可以交换任意次),而不添加、删除、修改原有的字母就能生成的单词。现在给定你 n 个单词,另外再给你一个单词 x ,让你寻找 x 的兄弟单词里,按字典序排列后的第 k 个单词是什么?先输入字典中单词的个数n,再输入n个单词作为字典单词。数据范围:1≤n≤1000 ,输入的字符串长度满足 1≤len(str)≤10 ,1≤k

2024-01-21 16:20:29 415

原创 HJ63 DNA序列

G 和 C 的比例(定义为 GC-Ratio )是序列中 G 和 C 两个字母的总的出现次数除以总的字母数目(也就是序列长度)。给定一个很长的 DNA 序列,以及限定的子串长度 N ,请帮助研究人员在给出的 DNA 序列中从左往右找出 GC-Ratio 最高且长度为 N 的第一个子串。虽然CGACC的GC-Ratio也是最高,但它是从左往右找到的GC-Ratio最高的第2个子串,所以只能输出GCACG。数据范围:字符串长度满足 1≤n≤1000 ,输入的字符串只包含 A/C/G/T 字母。

2024-01-21 14:15:12 371

原创 HJ26 字符串排序

规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。编写一个程序,将输入字符串中的字符按如下规则排序。数据范围:输入的字符串长度满足 1≤n≤1000。规则 3 :非英文字母的其它字符保持原来的位置。如,输入: Type 输出: epTy。如,输入: BabA 输出: aABb。

2024-01-20 15:58:17 399

原创 HJ102 字符统计

输入一个只包含小写英文字母和数字的字符串,按照不同字符统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASCII码由小到大排序输出。样例里,c和d出现3次,a出现2次,但c的ASCII码比d小,所以先输出c,再输出d,最后输出a.一个字符串,为不同字母出现次数的降序表示。若出现次数相同,则按ASCII码的升序输出。数据范围:字符串长度满足 1≤len(str)≤1000。一个只包含小写英文字母和数字的字符串。

2024-01-19 19:23:08 342

原创 HJ37 统计每个月兔子的总数

有一种兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子。例子:假设一只兔子第3个月出生,那么它第5个月开始会每个月生一只兔子。一月的时候有一只兔子,假如兔子都不死,问第n个月的兔子总数为多少?数据范围:输入满足 1≤n≤31。输入一个int型整数表示第n个月。

2024-01-19 18:53:50 332

原创 HJ92 在字符串中找出连续最长的数字串

输入一个字符串,返回其最长的数字子串,以及其长度。若有多个最长的数字子串,则将它们全部输出(按原字符串的相对位置)输出字符串中最长的数字字符串和它的长度,中间用逗号间隔。如果有相同长度的串,则要一块儿输出(中间不要输出空格)。数据范围:字符串长度1≤n≤200 , 保证每组输入都至少含有一个数字。样例二最长的数字子串有72,98,65,长度都为2。样例一最长的数字子串为123058789,长度为9。1

2024-01-19 15:55:58 351

原创 HJ103 Redraiment的走法

他希望走的步数最多,你能替Redraiment研究他最多走的步数吗?数据范围:每组数据长度满足1≤n≤200 , 数据大小满足1≤val≤350。如从第1格开始走,最多为3步, 2 4 5 ,下标分别是 1 5 6。而从第3格开始走最多有3步,1 4 5, 下标分别是 3 5 6。数据共2行,第1行先输入数组的个数,第2行再输入梅花桩的高度。从第5格开始走最多有2步,4 5, 下标分别是 5 6。6个点的高度各为 2 5 1 5 4 5。从第2格开始走,最多只有1步,5。

2024-01-19 14:19:38 384

原创 HJ45 名字的漂亮度

对于样例lisi,让i的漂亮度为26,l的漂亮度为25,s的漂亮度为24,lisi的漂亮度为25+26+24+26=101.每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个不同字母拥有相同的“漂亮度”。给出一个字符串,该字符串仅由小写字母组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。给出多个字符串,计算每个字符串最大可能的“漂亮度”。数据范围:输入的名字长度满足 1≤n≤10000。第一行一个整数N,接下来N行每行一个字符串。每个字符串可能的最大漂亮程度。

2024-01-17 15:28:39 404

原创 HJ59 找出字符串中第一个只出现一次的字符

数据范围:输入的字符串长度满足 1≤n≤1000。输出第一个只出现一次的字符,如果不存在输出-1。找出字符串中第一个只出现一次的字符。

2024-01-17 14:04:47 392

原创 HJ57 高精度整数加法

输入两个用字符串 str 表示的整数,求它们所表示的数之和。保证字符串只含有'0'~'9'字符。数据范围:1≤len(str)≤10000。

2024-01-17 13:40:47 394

原创 HJ69 矩阵乘法

如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的。对于每组输入数据,输出x行,每行z个整数,代表两个矩阵相乘的结果。第二行包含一个正整数y,代表第一个矩阵的列数和第二个矩阵的行数。第一行包含一个正整数x,代表第一个矩阵的行数。第三行包含一个正整数z,代表第二个矩阵的列数。之后x行,每行y个整数,代表第一个矩阵的值。之后y行,每行z个整数,代表第二个矩阵的值。矩阵的大小不超过100*100。

2024-01-16 20:23:49 1524

原创 HJ68 成绩排序

给定一些同学的信息(名字,成绩)序列,请你将他们的信息按照成绩从高到低或从低到高的排列,相同成绩都按先录入排列在前的规则处理。第一行输入要排序的人的个数n,第二行输入一个整数表示排序的方式,之后n行分别输入他们的名字和成绩,以一个空格隔开。进阶:时间复杂度:O(nlogn) ,空间复杂度:O(n)按照指定方式输出名字和成绩,名字和成绩之间以一个空格隔开。注:0代表从高到低,1代表从低到高。数据范围:人数:1≤n≤200。

2024-01-16 15:32:06 470

原创 HJ90 合法IP(容易考虑不全面)

IPV4地址可以用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此正号不需要出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。进阶:时间复杂度:O(n) ,空间复杂度:O(n)存在10以内的整数表示不符合要求的部分。现在需要你用程序来判断IP是否合法。数据范围:数据组数:1≤t≤18。输入一个ip地址,保证不包含空格。返回判断的结果YES or NO。

2024-01-15 16:34:04 474

原创 HJ29 字符串加密解密

当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;数据范围:输入的两个字符串长度满足 1≤n≤1000 ,保证输入的字符串都是只由大小写字母或者数字组成。当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;对输入的字符串进行加解密,并输出。第一行输入一串要加密的密码。第二行输入一串加过密的密码。解密方法为加密的逆过程。第一行输出加密后的字符。第二行输出解密后的字符。

2024-01-14 16:52:43 535

原创 HJ55 挑7

一个数与7有关是指这个数是 7 的倍数,或者是包含 7 的数字(如 17 ,27 ,37 ... 70 ,71 ,72 ,73...)输入20,1到20之间有关的数字包括7,14,17共3个。( n 不大于 30000 )一个整数,表示1到n之间的与7有关的数字个数。输出 1到n之间 的与 7 有关数字的个数。数据范围: 1≤n≤30000。

2024-01-14 16:05:08 406

原创 HJ86 求最大连续bit数(没管时间复杂度)

求一个int类型数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1。200的二进制表示是11001000,最多有2个连续的1。进阶:时间复杂度:O(logn) ,空间复杂度:O(1)数据范围:数据组数:1≤t≤5 ,1≤n≤500000。输出转成二进制之后连续1的个数。输入一个int类型数字。

2024-01-12 22:44:37 365

原创 HJ87 密码强度等级

样例的密码长度大于等于8个字符,得25分;由于该密码包含大小写字母、数字和符号,所以奖励部分得5分,经统计得该密码的密码强度为25+20+20+25+5=95分。"#$%&'()*+,-./ (ASCII码:0x21~0x2F){|}~ (ASCII码:0x7B~0x7E)示例2的密码强度为10+20+0+25+0=55分。10 分: 密码里的字母全都是小(大)写字母。20 分: 密码里的字母符合”大小写混合“>= 0: 非常弱(Very_Weak)

2024-01-12 20:53:25 377

原创 HJ94 记票统计(对是对了,但有待简化)

按照输入的顺序,每行输出候选人的名字和得票数量(以" : "隔开,注:英文冒号左右两边都有一个空格!),最后一行输出不合法的票数,格式为"Invalid : "+不合法的票数。第一行输入候选人的人数n,第二行输入n个候选人的名字(均为大写字母的字符串),第三行输入投票人的人数,第四行输入投票。你会收到很多投票,其中有合法的也有不合法的,请统计每个候选人得票的数量以及不合法的票数。(注:不合法的投票指的是投票的名字不存在n个候选人的名字中!E CF GG三张票是无效的,所以Invalid的数量是3.

2024-01-12 17:24:52 392

原创 HJ96 表示数字

将一个字符串中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。字符中所有出现的数字前后加上符号“*”,其他字符保持不变。数据范围:字符串长度满足 1≤n≤100。

2024-01-12 16:15:38 368

原创 HJ99 自守数

自守数是指一个数的平方的尾数等于该数自身的自然数。例如:25^2 = 625,76^2 = 5776,9376^2 = 87909376。请求出n(包括n)以内的自守数的个数。有0,1,5,6这四个自守数。数据范围: 1≤n≤10000。有0, 1这两个自守数。n以内自守数的数量。

2024-01-12 15:16:59 375

空空如也

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

TA关注的人

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