算法题

Logic1019 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出数轴移动中只出现一次的指令——只出现一次的数字小A在玩一个有趣的游戏,他站在数轴的原点(位置0)上,手里有一串移动指令。每个指令是一个整数,表示小A需要向左(负数)或向右(正数)移动的步数。但是小A发现,当他按顺序执行所有指令后,竟然神奇地回到了原点!原来,除了一个指令只出现了一次外,其他所有指令都恰好出现了两次(即每个指令在数组中出现两次)。现在需要你帮助小A找出那个只出现了一次的指令。
Logic10110 天前
c语言·数据结构·字符串·模拟·时间复杂度·空间复杂度·算法题
C语言/数据结构字符串题解:解压缩“字符+次数“格式——多位数字处理与字符串还原小明在整理历史文献时发现了一种古老的压缩字符串,其规则如下:将连续重复的字符用"字符+出现次数"的形式表示。例如,"aaabb"会被压缩成"a3b2"。现在小明需要编写一个解压缩程序,将这种格式的字符串恢复成原始形式。
Logic10110 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出糖葫芦派对中的“独一无二山楂果数量“——只出现一次的数字班级里举办了一场糖葫芦派对,每位同学都拿到了一串糖葫芦,每串糖葫芦上插着数量不同的山楂果(用整数表示)。已知班级中除了一个同学的糖葫芦串上的山楂果数量是独一无二的外,其他所有同学的糖葫芦串上的山楂果数量都恰好出现两次(即每个数量都恰好有两位同学相同)。班长小C想要快速找出那位拿着独一无二糖葫芦串的同学,以便为他颁发“最特别糖葫芦奖”。
Logic10115 天前
c语言·数据结构·动态规划·时间复杂度·数位dp·算法题·前导零处理
C语言/数据结构数位DP题解:平滑排列数字统计——区间内相邻位差不超过K的数字个数小明最近迷上了数字游戏,他发现了一个有趣的现象:对于给定的区间 [L, R],其中包含的数字可以组成许多不同的排列。但是,小明特别关注那些所有相邻数字的差的绝对值都不超过 K 的排列,他称之为“平滑排列”。现在,小明想知道在区间 [L, R] 内有多少个数字本身就是这种平滑排列(即该数字的十进制表示中,每一位数字构成的序列是一个平滑排列)。你能帮助小明计算这个数量吗?
Logic10116 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出优秀项目组中的“独特编号“——只出现一次的数字一年一度的优秀项目组初选评比开始了!每个项目组都有一个独特的编号,但有趣的是,除了一个项目组之外,所有其他项目组的编号都恰好出现了两次(因为每个项目组都有一个小分组)。班长小C需要快速找出那个独特的项目组编号,以便通知他们直接进入下一轮评选。
Logic10117 天前
c语言·数据结构·字符串·枚举·时间复杂度·算法题·kmp优化
C语言/数据结构字符串题解:最短循环节——找出能重复构成原串的最短基础子串小明在玩一个字符串拼接游戏时发现了一个有趣的现象:某些字符串可以通过重复一个较短的子串多次来构成。比如字符串 "abcabcabc" 可以由子串 "abc" 重复3次得到。这个较短的子串被称为字符串的"循环节"或"基础重复单元"。
Logic10118 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出英雄队伍中的“独特战斗力“——只出现一次的数字小强最近沉迷于一款英雄对战游戏,他需要组建一支英雄队伍来通关副本。每个英雄都有一个独特的战斗力数值,但游戏规则特殊:除了一个英雄的战斗力数值只出现一次外,其余每个战斗力数值都恰好出现两次(即有两个英雄拥有相同的战斗力)。这个独特的英雄拥有特殊的技能,能够帮助队伍轻松通关。
Logic10119 天前
c语言·数据结构·动态规划·时间复杂度·空间复杂度·算法题·爬楼梯
C语言/数据结构动态规划题解:爬楼梯(含坏台阶)——避开障碍物的路径计数小明正在爬一个有 n 级台阶的楼梯,但是他的体力有限,每次只能爬 1 级或者 2 级台阶。更特别的是,楼梯的某些台阶是坏的,小明不能踩上去。小明的目标是爬到楼梯的顶部(第 n 级台阶),但必须避开所有坏掉的台阶。现在,请你帮助小明计算,在避开所有坏台阶的情况下,他有多少种不同的方式可以爬到楼梯顶部。
Logic10120 天前
c语言·数据结构·数组·排序·时间复杂度·算法题·负数处理
C语言/数据结构排序题解:三个数的最大乘积——排序后比较两种候选情况在一次数学竞赛中,小C和小红被要求从一个整数数组中找出三个不同的数字,使得它们的乘积最大。但是有一个规则:这三个数字必须来自数组中的不同位置,且不能是同一个数字重复使用(即使数组中有重复数字,每个位置也只能用一次)。小C和小红需要合作设计一个高效的算法来解决这个问题,以便在竞赛中胜出。
Logic10120 天前
c语言·数据结构·贪心算法·字符串·时间复杂度·频率统计·算法题
C语言/数据结构贪心算法题解:字符串趋同——逐位统计最高频率求最小修改代价小明的学校正在举办一场“字符串趋同”游戏,每个班级需要将自己的字符串通过最少次数的字符修改操作变得完全相同。每位同学初始有一个由小写字母组成的字符串,每次操作可以选择任意一位同学,修改其字符串中的任意一个字符(可以改为任意小写字母)。但是每次修改的代价为1,不同位置的修改代价独立计算。
Logic10123 天前
c语言·数据结构·字符串·时间复杂度·计数排序·算法题·ascii
C语言/数据结构字符串题解:按字符类型重排(数字→字母→符号)——三趟扫描稳定分区小明在整理班级的图书角时,发现每本书的封面上都印有一个字符(可能是字母、数字或符号)。为了便于分类,老师希望将这些字符按照类型重新排序:先排列所有数字字符('0'-'9'),然后是所有字母字符('a'-'z', 'A'-'Z'),最后是其他符号字符。同时,要求在同类型字符中保持它们在原始字符串中的相对顺序不变。
Logic10123 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出学习计划中的“独特学习时间“——只出现一次的数字小明和小红是两位热爱学习的同学,他们决定利用暑假时间学习新技能。他们列出了 n 个技能,每个技能有一个学习时间(单位:小时)。有趣的是,除了一个技能外,所有技能的学习时间都恰好出现了两次,这意味着有两个技能需要相同的时间完成。只有一个技能的学习时间是独一无二的。
Logic10124 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出弹子游戏机中数量为奇数的数字——只出现奇数次小M最近沉迷于一台神秘的弹子游戏机。游戏机每次会弹出一串数字序列,其中只有一个数字的弹子数量是奇数个,其余数字的弹子数量都是偶数个(即出现次数为偶数)。小M需要快速找出那个数量为奇数的数字,才能获得游戏奖励。你能帮助小M设计一个高效的算法来解决这个挑战吗?
Logic10125 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出书柜中编号只出现一次的那一层——只出现一次的数字小M最近买了一个新书柜,书柜有若干层,每层有一个独特的编号(但不同层的编号可能相同)。有趣的是,除了某一层的编号只出现一次外,其他每个编号都恰好出现在两层书柜上(即每个编号都恰好出现两次)。小M想知道,那个编号只出现一次的书柜是哪一层?
Logic10125 天前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出星球探险中的“独特能量石“——只出现一次的数字小M是一位勇敢的太空探险家,他在探索一颗神秘星球时发现了一串奇特的能量石序列。这些能量石上刻有不同的整数能量值,但奇怪的是,除了一个能量石的能量值之外,其他所有能量值都恰好出现了两次。传说中,那个独特的能量石是打开星球宝藏的关键!小M需要你的帮助,快速找出那个独特能量石的能量值,以便继续他的冒险。
Logic1011 个月前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出多任务下载器中的“独特下载速度“——只出现一次的数字小M正在开发一个多任务下载器,可以同时下载多个文件。每个文件都有一个唯一的下载速度(整数),但系统显示时不小心将每个速度值都重复显示了两次(即除了一个独特的速度值外,其他每个速度值都恰好出现两次)。小M需要快速找出这个独特下载速度的文件,以便优先处理它。
Logic1011 个月前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出游戏速通中的“独特初始能量值“——只出现一次的数字小M最近沉迷于《光明之魂》这款游戏,他正在进行速通挑战。游戏中有多个关卡,每个关卡都有一个初始能量值。有趣的是,除了一个关卡的初始能量值之外,所有其他关卡的初始能量值都恰好出现了两次。小M需要快速找到那个拥有独特初始能量值的关卡,以便优先突破,完成速通挑战。
Logic1011 个月前
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
C语言/数据结构位运算题解:异或XOR找出时尚聚会中的“独特颜色“——只出现一次的数字在时尚圈的一个聚会上,每位嘉宾都穿着一种特定颜色的衣服,用整数表示颜色编号。有趣的是,除了一个颜色之外,所有的颜色都恰好被两位嘉宾穿着(形成了配对)。现在需要你帮助时尚达人小F快速找到那个穿着独特颜色衣服的嘉宾的颜色编号是什么。
Logic1011 个月前
c语言·数据结构·字符串·滑动窗口·时间复杂度·频率统计·算法题
C语言/数据结构滑动窗口题解:替换k个字符后的最长连续相同字符子串(LeetCode 424)小红在玩一个字符串游戏,她有一个由大写字母组成的字符串 s 和一个整数 k。游戏规则允许她进行最多 k 次字符替换操作(每次操作可以将任意一个字符替换成另一个大写字母),她希望通过这些操作使得字符串中出现一个尽可能长的由相同字符组成的连续子串。
Logic1011 个月前
c语言·数据结构·动态规划·贪心·时间复杂度·算法题·最大子数组和
C语言/数据结构动态规划题解:Kadane算法求最大子数组和——O(n)时间O(1)空间小明在玩一个有趣的数字游戏:他有一排连续的数字积木,每个积木上写着一个整数(可能是正数或负数)。现在,他想找出这些积木中连续一段(子数组)的和的最大值是多少。例如,如果积木序列是 [-2, 1, -3, 4, -1, 2, 1, -5, 4],那么连续和最大的子数组是 [4, -1, 2, 1],其和为 6。