部分背包(比较简单,需要注意是否越界访问等问题)
P2240 【深基12.例1】部分背包问题 时间限制: 1.00s 内存限制: 125.00MB 题目描述 阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有 N(N≤100) 堆金币,第 i 堆金币的总重量和总价值分别是 mi,vi(1≤mi,vi≤100)。阿里巴巴有一个承重量为 T(T≤1000)
2026-02-06
|
5
|
0
|
0
孩子们,我回来了(写了个简单题)
P1223 排队接水 时间限制: 1.00s 内存限制: 125.00MB 题目描述 有 n 个人在一个水龙头前排队接水,假如每个人接水的时间为 Ti,请编程找出这 n 个人排队的一种顺序,使得 n 个人的平均等待时间最小。 一个人的等待时间不包括他的接水时间。 如果两个人接水的时间相同,编号更小的
2026-02-04
|
5
|
2
|
0
printf函数详细教程(给C++学习者的特别指南)
一、printf是什么? printf是C语言的输出函数,在C++中也可以使用。它与cout相比: cout:面向对象的流输出 printf:函数式格式化输出 简单对比: // cout方式 cout << "Hello, " << name << "! Age: " << age << endl;
2026-01-29
|
7
|
0
|
0
C++ map 和 unordered_map 详解
一、基本概念对比 1. 共同点 都是关联容器,存储键值对(key-value pairs) 提供快速的查找、插入、删除操作 键(key)唯一,不能重复 2. 核心区别 特性 map unordered_map 底层实现 红黑树(平衡二叉搜索树) 哈希表
2026-01-29
|
6
|
0
|
0
浮点数输出精度控制与舍入规则详解
一、为什么要控制精度和舍入? 1.1 问题演示 #include <iostream> using namespace std; int main() { double a = 1.0 / 3; // 0.3333333333333333... double b = 2.0 /
2026-01-29
|
5
|
0
|
0
范围for循环(Range-based for loop)总结
一、核心语法格式 for (元素类型 变量名 : 容器) { // 循环体 } 记忆口诀:for (类型 名字 : 容器) 二、三种使用方式对比 写法 用途 能否修改原数据 效率 for (char c : s) 只读遍历,创建副本<
2026-01-29
|
4
|
0
|
0
C++ stack(栈)容器详解
一、什么是栈? 基本概念 栈(stack) 是一种 先进后出(First In Last Out, FILO) 的数据结构,它只有一个出口。 生活比喻 想象一叠盘子: 放盘子(入栈):只能放在最上面 取盘子(出栈):只能从最上面取 特点:最后放上去的盘子最先被取走 二、栈的重要特性 关键限制:
2026-01-29
|
7
|
0
|
0
vector 遍历方法总结(适合初学者)
一、核心概念回顾 遍历 = 按顺序访问容器中的每个元素 二、一维 vector 的遍历方法 方法1:下标遍历(最简单直观) vector<int> v = {10, 20, 30, 40, 50}; // 1.1 传统for循环 for (int i = 0; i < v.size(); i++)
2026-01-29
|
4
|
0
|
0
vector<int> 的多种赋值方法详解
一、初始化时赋值(创建时就给值) 1. 直接初始化(最常用) vector<int> v1 = {1, 2, 3, 4, 5}; // C++11开始支持 vector<int> v2{6, 7, 8, 9, 10}; // 直接列表初始化 vector<i
2026-01-29
|
6
|
0
|
0
C++ STL容器竞赛核心攻略(蓝桥杯必学)
🎯 学习策略 重点突破:只学竞赛中真正高频的容器,避免“全面但无用” 核心原则:80%的题目用20%的容器功能解决 一、必学高频(核心中的核心) 1. vector(动态数组)—— STL最基础容器 核心定位:蓝桥杯100%必考,替代C语言静态数组,支持动态扩容 必须掌握的定义方式
2026-01-29
|
4
|
0
|
0