月度归档: 2022年10月

5 篇文章

thumbnail
P8593 「KDOI-02」一个弹的投 题解
P8593 「KDOI-02」一个弹的投 题目传送门 题目背景 前置芝士:平抛运动 (看到这个如果不想做可以直接开下一题) 「这群该死的外星人,肯定是来抢夺新矿资源的!」 「这导弹什么鬼啊,研究不明白。」 无数的水滴型武器从苍穹之外落下,猛击着无知的生命。 题目描述 经研究,该武器的运作方式是这样的。其中设重力方向为 $y$ 轴负半轴,$x$ 轴为…
thumbnail
P3528 [POI2011]PAT-Sticks 题解
题目传送门 [POI2011]PAT-Sticks 题目描述 给你每根木棍的长度和颜色,求一个能拼成三角形且木棍颜色互不相同的方案 输入格式 第一行输入一个整数 $k(3 \le k \le 50)$ ,表示一共有多少种不同的颜色。 颜色从 $1$ 到 $k$ 编号。接下来的 $k$ 行表示不同颜色木棍的颜色、长度信息。 第 $i+1$ 行,有多个…
thumbnail
讲义:线段树
学习线段树,你需要先完成树、数组、分治思想、递归的学习(可以说是学习成本极低了) 引入 线段树是一个用途极为广泛的数据结构,在提高组及以上的比赛中经常看到它的身影。 现在我有一个问题,给一个长度为 $n$ 的序列,我需要将序列中一个范围内的每一个数进行一次运算,例如加上 $x$ ,也就是区间修改,然后查询修改后一个区间范围内所有值的和或者其他量,也…
thumbnail
重载运算符
什么是重载运算符 重载运算符是通过对运算符的重新定义,使得其支持特定数据类型的运算操作。重载运算符是重载函数的特殊情况。 C++自带的运算符,最初只定义了一些基本类型的运算规则。当我们要在用户自定义的数据类型上使用这些运算符时,就需要定义运算符在这些特定类型上的运算方式。 重载运算符的限制 只能对现有的运算符进行重载,不能自行定义新的运算符。以下运…
thumbnail
可持久化线段树
主席树,又叫可持久化权值线段树,也叫函数式线段树,是可持久化线段树的子集。在本文中,我们可以认为主席树等于可持久化线段树 可持久化线段树简介 基本结构、特点、作用在这篇文章中已经提到过:线段树扩展:权值线段树 总的来说就是每次修改或插入一个值,就新建一个根节点,并且向下递归去新建其他节点。 优点解释 每次插入操作最多创建的节点数都为$\log n$…