观前笔记
Markdown
LaTeX\LaTeXLATE X教程
LaTeX\LaTeXLATE X符号大全
LaTeX\LaTeXLATE X编辑器
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
类
构造函数
一个形如class A{...};的类,构造函数格式如:
构造函数的特点:
* 无返回值
* 如果没有定义,C++会使用默认的构造函数
析构函数
析构函数在对象生命周期结束时自动调用,用于释放对象调用的资源。
依旧有一个类A:
> 如果不手写这个函数,c++会提供默认的析构函数。
> 当然这样就不会处理指针了。
复制构造函数
还是一个类A。
> 为什么复制构造函数使用常量引用?
* 常量---保护复制的对象不被修改
* 引用---减少赋值开销
注意,在复制构造函数涉及指针时,建议只复制指针指向地址存储的值。
完整演示:
> 这里为了演示,同时增加一个函数print来输出数值。
运行结果:
> 不注释A a:
>
> (因为定义的构造函数有参数(string,int))
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
前缀和
模板
一维
二维
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
数与堆
大/小顶堆
应用于结构体:增加operator
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
动态规划
01背包
一个背包,最多装下质量为mmm的物品。
现在有nnn个物品,第iii个物品价值viv_ivi ,重wiw_iwi ,求最大价值
1.dp[i][j]dp[i][j]dp[i][j]表示在前iii个物品,背包容量jjj时的最大价值
2.答案dp[n][m]dp[n][m]dp[n][m]
3.dp[i][j]=max(dp[i−1][j],dp[i−1][j−vi]+wi)dp[i][j]=max(dp[i-1][j],dp[i-1][j-v_i]+w_i)dp[i][j]=max(dp[i−1][j],dp[i−1][j−vi ]+wi )
模板:
完全背包
一个背包,最多装下质量为mmm的物品。
现在有nnn种物品(每种物品质量不限),第iii个物品价值viv_ivi ,重wiw_iwi ,求最大价值
dp[i][j]=max(dp[i−1][j−k∗v[i]]+w[i]∗k,dp[i][j])dp[i][j] = max(dp[i-1][j-k*v[i]]+w[i]*k,dp[i][j])dp[i][j]=max(dp[i−1][j−k∗v[i]]+w[i]∗k,dp[i][j])
优化版模板
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
在DEV测试运行时间
老版本
新版本(更稳定,需要手动调整至C++11标准)
调整方法:工具-编译器选项-代码生成/优化-代码生成-语言标准-GNU/ISO C++11
> 每秒滴答数这个概念可能mc玩家比较好理解,近似于游戏刻
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
杂项
端口号
不同软件和协议 FTP HTTP HTTPS MySQL 默认端口 21 80 443 3306
老师居然在初赛题库里塞这个吗有意思
排列组合
Aij=i⋅i−1⋅i−2⋯i−j+2⋅i−j+1⏟j个数Cij=AijAjjA_i^j=\underbrace{i \cdot i-1 \cdot i-2 \cdots i-j+2 \cdot i-j+1}_{j个数}\\ C_i^j=\frac{A_i^j}{A_j^j} Aij =j个数i⋅i−1⋅i−2⋯i−j+2⋅i−j+1 Cij =Ajj Aij
nnn个元素的全排列个数为:
n!k1!k2!k3!⋯kn−1!kn!\displaystyle\frac{n!}{k_1!k_2!k_3!\cdots k_{n-1}!k_n!} k1 !k2 !k3 !⋯kn−1 !kn !n!
错排问题:
f(n)=(n−1)∗(f(n−1)+f(n−2)),f(1)=0,f(2)=1f(n)=(n-1)*(f(n-1)+f(n-2)),f(1)=0,f(2)=1f(n)=(n−1)∗(f(n−1)+f(n−2)),f(1)=0,f(2)=1
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
XP03B-1日志
8/15
一堆人在教室唱海阔天空。
8/17
神人
断句版本
啊啊啊,宝宝,你是一个香香软软、甜甜糯糯、蜂蜜奶油、甜甜腻腻、酥酥脆脆、滑滑嫩嫩、绵绵密密、弹弹润润、丝丝滑滑、蓬蓬松松、香香甜甜、油油润润、细细软软、密密实实、润润甜甜、酥酥软软、嫩嫩滑滑、松松软软、甜甜蜜蜜、细细绵绵、香香浓浓、弹弹嫩嫩、入口即化、弹牙有嚼劲的牛肉、鸡肉、羊肉、猪肉、鸭肉、北京烤鸭、老北京豆汁、老北京鸡肉卷、番茄炒饭、番茄炒肉、番茄炒鸡蛋、番茄炒米粉、番茄炒米线、番茄炒汉堡、番茄炒可乐、番茄炒科比、草莓、蓝莓、苹果、香蕉、葡萄、香香甜甜、酸酸甜甜、辣辣爽爽、咸咸鲜鲜、苦苦甘甘、滑滑嫩嫩、酥酥脆脆、软软绵绵、弹弹润润、油油腻腻、清清爽爽、浓浓醇醇、淡淡幽幽、热热乎乎、冰冰凉凉、黏黏糊糊、爽爽脆脆、鲜鲜嫩嫩、辣辣麻麻、苦苦辣辣、苹果、香蕉、橙子、草莓、葡萄、西瓜、樱桃、菠萝、猕猴桃、蓝莓、桃子、梨、杏、李子、西红柿、黄瓜、胡萝卜、生菜、菠菜、花椰菜、卷心菜、洋葱、大蒜、土豆、红薯、南瓜、玉米、豌豆、扁豆、红豆、绿豆、黄豆、黑豆、鸡蛋、牛奶、奶酪、酸奶、黄油、面包、面条、米饭、燕麦、玉米片、饼干、蛋糕、巧克力、冰淇淋、糖果、花生、腰果、杏仁、核桃、榛子、松子、芝麻、蜂蜜、果酱、番茄酱、芥末酱、油醋橄榄油、菜籽油、葵花籽油、鱼、虾、蟹、龙虾、贝类、牛肉、羊肉、猪肉、鸡肉、鸭肉、鹅肉、火鸡肉、香肠、火腿、培根、肉丸、汉堡、热狗、披萨、寿司、拉面、咖喱炖肉、烤肉、烤鱼、烤鸡、沙拉、汤、粥、蒸蛋、豆腐、豆浆、豆奶、豆腥草、豆皮、豆干、芒果、柠檬、柚子、金桔、百香果、火龙果、牛油果、无花果、荔枝、龙眼、枇杷、山楂、桑葚、甜瓜、哈密瓜、甜菜根、莴苣、茼蒿、芥蓝、芹菜、荠菜、苋菜、意式烤蔬菜配香草酱和橄榄油、鲜美多汁、香脆可口、滑嫩浓郁、醇厚甘甜、爽口香辣、酸甜苦辣、咸香酥软、糯滑爽、劲道鲜美、清香扑鼻、诱人、色泽鲜艳、香气扑鼻、口感丰富、层次分明、风味独特、香气四溢、回味无穷、色香味俱佳、口感细腻、肉质鲜嫩、色泽金黄、外酥里嫩、香气浓郁、味道鲜美、口感滑嫩、味道醇厚、味道独特、风味独特、香气诱人、口感鲜美、味道浓郁、口感丰富、味道鲜美、味道醇厚、味道独特、香气扑鼻