质数口袋2026-01-112026-08-13c++#include<iostream> using namespace std; bool prime(int n){ for(int i = 2;i*i<=n;i++){ if(n%i==0){ return false; } 2026-01-11|6|1|0
解决“压缩字符串”问题的编程过程详解2026-01-102026-08-13c++一、题目核心理解(直白说明) 这道题的要求很明确,就是对输入的字符串做“压缩”处理,但有两个关键规则必须遵守: 压缩格式:把连续相同的字符,改成“字符+出现次数”的形式。比如“AAABCCDDDD”,连续3个A就写成“A3”,1个B就直接写“B”(次数是1时不用写),2个C写成“C2”,4个D写成“2026-01-10|8|0|0
倍数问题2026-01-092026-08-13c++题目描述 众所周知,小葱同学擅长计算,尤其擅长计算一个数是否是另外一个数的倍数。但小葱只擅长两个数的情况,当有很多个数之后就会比较苦恼。现在小葱给了你 n 个数,希望你从这 n 个数中找到三个数,使得这三个数的和是 K 的倍数,且这个和最大。数据保证一定有解2026-01-09|8|1|0
从暴力递归到空间最优:完全背包问题的完整优化之路2026-01-082026-08-13c++一、问题理解:什么是完全背包? 先明确完全背包的核心定义,避免与 0-1 背包混淆: 给定一个容量为 V 的背包,n 个物品,每个物品有体积 volume[i] 和价值 value[i],每个物品可以无限次选取。要求在不超过背包容量的前提下,选择物品使总价值最大。 二、第一版代码:暴力递归(思路对但2026-01-08|5|0|0
铁路旅游期望时间问题求解过程2026-01-082026-08-13c++⚠️ 核心提示:本文梳理的“铁路旅游期望时间”问题求解过程中,两版尝试代码均存在未解决错误;且因不打算改动原有代码逻辑,已决定暂时放弃这道题的进一步求解。 下面我会用最直白的话,一步步拆解这个问题:从题目讲的是什么,到解决问题的核心思路,再到关键知识点、算法步骤和代码实现尝试。全程不堆砌专业术语,每2026-01-08|6|0|0
判断字符串排列的编程解析2026-01-072026-08-13c++亲爱的新手程序员奶奶,今天我们来学习一个有趣的字符串问题——判断一个字符串是否是另一个字符串的排列。我会用最简单明了的方式,从基础开始为您详细讲解。 问题理解:什么是字符串排列? 想象您有两串珠子,每串珠子由不同颜色的珠子组成。如果第二串珠子只是第一串珠子重新排列顺序的结果,那么我们就说第二串是第一2026-01-07|3|0|0
小明的背包从暴力递归到空间最优:0-1 背包问题的完整优化之路小明的背包2026-01-072026-08-13c++小明有一个容量为 V 的背包。 这天他去商场购物,商场一共有 N件物品,第 i 件物品的体积为 wi,价值为vi。 小明想知道在购买的物品总体积不超过 V 的情况下所能获得的最大价值为多少,请你帮他算算。2026-01-07|5|1|0
长草问题详解:从暴力到优雅2026-01-062026-08-13c++问题理解 我们先来看一下这个问题到底在说什么: 小明有一块空地,被分成了n行m列的小格子。有些格子种了草(用'g'表示),有些还是空地(用'.'表示)。每个月,草会向四个方向(上、下、左、右)扩展到相邻的空地上。我们需要计算k个月后,整个空地的状态是什么样的。 这就像是在模拟草的生长过程:每个月,所2026-01-06|4|0|0
k倍区间(难度升级版)2026-01-062026-08-13c++#include <iostream> #include <unordered_map> #include <vector> using namespace std; int main() { int N, K; cin >> N >> K; unordered_map<2026-01-06|5|0|0