yxy版c++教程
文章平均质量分 73
c++教程——by yxy
_Youngyx
ᴵᶠ ʸᵒᵘ ᵃʳᵉ ᵃˡʷᵃʸˢ ʰᵉʳᵉ ᴵ ʷⁱˡˡ ᵃˡʷᵃʸˢ ˡᵒᵛᵉ
展开
-
「NOIP2012」疫情控制 题解
传送门题目描述H国有 n个城市,这 n 个城市用n−1条双向道路相互连通构成一棵树,1号城市是首都,也是树中的根节点。H国的首都爆发了一种危害性极高的传染病。当局为了控制疫情,不让疫情扩散到边境城市(叶子节点所表示的城市),决定动用军队在一些城市建立检查点,使得从首都到边境城市的每一条路径上都至少有一个检查点,边境城市也可以建立检查点。但特别要注意的是,首都是不能建立检查点的。现在,在 H 国的一些城市中已经驻扎有军队,且一个城市可以驻扎多个军队。一支军队可以在有道路连接的城市间移动,并在除首都以外原创 2022-03-09 20:40:16 · 349 阅读 · 0 评论 -
浅谈 容斥
容斥容斥原理它在解决计数问题乃至一切存在交集的问题时,逻辑清晰,方便思考,优势显著[例1] 求图形的面积S=A∪B∪C=A+B+C-A∩B-B∩C-C∩A+A∩B∩C容斥原理公式(求集合交集)假设集合U中有n种不同属性,第i种属性为Pi 有属性Pi的元素构成集合Si,则∣⋃i=1nSi∣=∑i∣Si∣−∑i<j∣Si∩Sj∣+∑i<j<k∣Si∩Sj∩Sk∣−...+(−1)m−1∑ai<ai+1∣⋂i=1mSai∣+...+(−1)n−1∣S1∩...∩Sai∣\原创 2022-02-23 16:44:04 · 427 阅读 · 0 评论 -
二分与三分
二分二分查找前提:数据有序 and 连续空间复杂度只有O(logn)非常优秀的算法!code#incldue<bits/stdc++.h>#define ll long longusing namespace std;ll a[10002],n,x;int main(){ scanf("%lld%lld",&n,&x); for(int i=1;i<=n;i++){ scanf("%lld",&...原创 2022-02-08 11:08:24 · 528 阅读 · 0 评论 -
浅谈线性DP
线性动态规划,是较常见的一类动态规划问题,其是在线性结构上进行状态转移不像背包问题、区间DP等有固定的模板(但是模版也相对固定,更多的是要通过题目来思考)线性动态规划的目标函数为特定变量的线性函数,约束是这些变量的线性不等式或等式目的是求目标函数的最大值或最小值(直观理解来看,只要状态转移方程能写成分段函数的,在某种意义上都能说他是线性DP,但本质仍是需要去探究信息流动的过程)因此,除了少量问题(如:LIS、LCS、LCIS等)有固定的模板外,大部分都要根据实际问题来推导得出答案常见原创 2022-01-26 12:52:30 · 317 阅读 · 0 评论 -
DP理论一
定义Dynamic Programming(DP),和贪心、分治一样,DP并不是一种特定算法,而是一种算法思想每次决策依赖于当前状态,又随即引起状态的转移一个决策序列就是在变化的状态中产生出来的所以,这种多阶段最优化决策解决问题的过程就称为动态规划将一个问题拆成几个子问题,分别求解这些子问题,即可推断出大问题的解满足无后效性、最优子结构性质性质无后效性对于「无后效性」,某个状态一旦确定,此后的过程演变不再受此前各状态的影响“未来与过去无关”,这就是无后效性原创 2022-01-26 11:28:47 · 1043 阅读 · 0 评论 -
浅谈数论:质数,约数与同余
模(mod)运算与整除 取模a对b取模得到的结果就是a除以b的余数也就是取余运算记作a mod b(a%b)整除 a%b=0,记作b|a,a是b的倍数模的性质模的几个基本性质: • (a + b)%p = (a%p + b%p)%p • (a - b)%p = (a%p – b%p)%p • (a - b)%p = (a - b + p)%p • a*b%p = (a%p)*(b%p) %p计算中取模,可以避免中间结果溢出 负数取原创 2022-01-22 15:45:54 · 967 阅读 · 0 评论 -
Hash 浅谈哈希算法
hash 哈希算法原创 2021-11-23 20:10:57 · 1235 阅读 · 0 评论 -
cin/cout语句-从键盘进行输入/输出
使用格式输入 cout cout<<输出内容 输出 cin cin>>输入内容 多变量的输入格式:cin >> 变量1 >> 变量2 >> 变量3>>…;连续使用输入操作符>>,从键盘输入多个数据eg:int a,b,c;cin>>a>>b>>c; //代表三个数分别存入变量a,b,c...原创 2021-08-08 08:45:05 · 985 阅读 · 0 评论 -
变量——可以变化的量
将计算机的大脑想象成一座楼房,里面有很多房间,只有登记之后才能住进楼房,否则会被拒之门外。申请变量假如你住旅馆,流程是?1.前台登记,领取房卡2.入住唯一区别:在变量里的是数据如果你想使用变量,就必须先向计算机申请注册一个“房间” (变量应当先定义,再使用)申请格式:数据类型 名称; eg:int a; double b;定义变量 定义多个同类型变量时,中间用英文逗号隔开eg:int a,b,c;变量数据类型int表示这个...原创 2021-08-07 19:32:10 · 214 阅读 · 0 评论 -
初识分支结构
分支语句#include<bits/stdc++.h>using namespace std;int main(){ int a,b; cout<<"请输入a,b:"; cin>>a>>b; cout<<a+b; return 0;}判断能让程序根据不同的情况进行处理条件语句如果识别到”小爱同学” 就回答“你好呀”条 件 单 分 支如果条件成立 执行语句Aif 语.原创 2021-08-08 09:13:15 · 177 阅读 · 0 评论