Ming's Blog
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

第一个只出现一次的字符(HJ13)

第一个只出现一次的字符题目描述https://www.nowcoder.com/share/jump/5832603751775720154472 给定一个字符串,找出其中第一个只出现一次的字符。如果没有这样的字符,输出 -1。 示例输入:asdfasdfo输出:o解释:o 只出现 1 次,且是第一个满足条件的字符 输入:aabbcc输出:-1解释:所有字符都出现多次 解题思路哈希表统计 + 顺序
2026-04-09
algorithm
#Python #哈希表 #题解 #字符串

最长数字子串(HJ12)

最长数字子串题目描述https://www.nowcoder.com/share/jump/5832603751775720143943 对于给定的由数字和小写字母混合构成的字符串 s,找到其中最长的数字子串。如果有多个相同长度的数字子串,则需要全部输出。 子串为从原字符串中连续选择一段字符得到的新字符串 输入保证至少存在一个数字子串 示例输入:abcd12345ed125ss12305878
2026-04-09
algorithm
#Python #题解 #字符串

删除出现次数最少的字符(HJ7)

删除出现次数最少的字符题目描述https://www.nowcoder.com/share/jump/5832603751775720118042 给定一个字符串,删除其中出现次数最少的字符。如果有多个字符出现次数都是最少,则全部删除。输出删除后的字符串,保持原有顺序。 示例输入:aabcddd输出:aadddd解释:b 和 c 各出现 1 次(最少),删除后剩余 “aadddd” 输入:aabb
2026-04-09
algorithm
#Python #哈希表 #题解 #字符串

明文分组(HJ3)

明文分组题目描述https://www.nowcoder.com/share/jump/5832603751775720083470 输入一个字符串,将字符串按每 8 个字符进行分组。不足 8 个字符的组则在后面补 0,每组单独输出一行。 示例输入:abc输出:abc00000 输入:1234567890输出:12345678 90 解题思路字符串填充 + 分组截取 计算需要补 0 后的长度:向上
2026-04-09
algorithm
#Python #题解 #字符串

Two Sets II 题解

Two Sets II 题解题目描述https://cses.fi/problemset/task/1092 给定数字 1, 2, …, n,求将其分成两个和相等集合的方式数。 限制: 1 ≤ n ≤ 500 示例: 输入:7 输出:4 解释: {1,3,4,6} 和 {2,5,7} {1,2,5,6} 和 {3,4,7} {1,2,4,7} 和 {3,5,6} {1,6,7} 和 {2,3
2026-04-08
02_动态规划
#题解 #DP #0-1 背包

Minimizing Coins 题解

Minimizing Coins(最少硬币数)题目描述https://cses.fi/problemset/task/1634/ 给定 n 种硬币,每种硬币价值为 $c_i$,求凑成金额 x 所需的最少硬币数(每种硬币可用无限次)。如果无法凑成,输出 -1。 限制: 1 ≤ n ≤ 100 1 ≤ x ≤ $10^6$ 1 ≤ c_i ≤ $10^6$ 解法问题类型:完全背包 定义:dp[j
2026-04-08
完全背包
#题解 #DP #完全背包

Coin Combinations

完全背包类型一:计数问题(方案数)Coin Combinations I(有序)题目描述https://cses.fi/problemset/task/1635 给定 n 种硬币,每种硬币价值为 $c_i$,求凑成金额 x 的不同方式数(顺序不同视为不同)。输出模 $10^9+7$ 的结果。 限制: 1 ≤ n ≤ 100 1 ≤ x ≤ $10^6$ 1 ≤ c_i ≤ $10^6$ 示例:
2026-04-08
完全背包
#题解 #DP #完全背包

完全背包问题

完全背包问题什么是完全背包完全背包(Unbounded Knapsack) 是动态规划中的经典问题: 有 n 种物品,每种物品有重量/价值 $w_i$,每种物品可以无限次使用,求恰好凑成重量 $W$ 的方案数或最大价值。 特点 物品数量无限:每种物品可以重复使用多次 状态无后效性:只关心当前重量,不关心用了哪些物品 组合方式:求的是组合(无序)还是排列(有序) 做题方法核心思路:将大问题拆分
2026-04-08
02_动态规划
#DP #完全背包

0/1 背包问题

0/1 背包问题问题描述有 $N$ 件物品,每件物品有重量 $w_i$ 和价值 $v_i$,求在不超过背包容量 $W$ 的情况下,选择物品使得总价值最大。 一维 DP定义:dp[j] 为背包容量为 j 时的最大价值 初始条件:dp[j] = 0 状态转移: dp[j] = \max(dp[j], dp[j - w] + v)代码: N, W = map(int, input().split())
2026-04-08
0-1背包
#DP #0-1 背包

02_Knapsack DP 背包DP

背包 DP背包问题简介背包问题通常涉及将有限容量的容器用物品的子集填满,我们希望计算或优化与物品相关的某些数量。几乎每次,你可以将每个物品视为具有正重量,而我们选择的物品的总重量不得超过容器的容量,这个容量是一个数字。 背包问题的变体 0/1 背包问题: 选择物品的子集,使得它们总价值最大化,且总重量不超过容器容量 完全背包问题: 找到所有可能的、由任何物品子集实现的总重量,这些总重量不超过容器容
2026-04-08
02_动态规划
#DP #动态规划 #背包 #算法
1234…8

搜索

Hexo Fluid