摘要:
欢迎来到我的博客 我是PHarr,常以PHarr这个ID在各大OJ闲逛 退役OI选手,现役ACM选手 毕业于焦作市解放区实验学校、焦作市外国语中学、焦作市第一中学、沁阳市第一中学 这个博客主要用来写写算法笔记,有时写点人生感悟 联系我 email : pharr.mx@outlook.com 荣誉墙 阅读全文
摘要:
std::reference_wrapper std::reference_wrapper 是 C++ 标准库中一个特殊的类模板,它的核心目的是将引用包装成一个可以复制、可以赋值的对象。这种设计解决了 C++ 中普通引用(T&)的一些局限性,尤其是在需要传递或存储引用语义的场景中。 为什么需要 st 阅读全文
摘要:
什么是回调函数 举一个例子 你入住一家酒店,这个酒店前台提供了叫醒服务,你可以自定义叫醒时间和叫醒服务。对于前台来说,叫醒时间只是变量,但是叫醒服务可以认为是一个函数。 这种把函数作为一个参数传递进另一个函数的函数叫做回调函数。被传入函数的函数叫做中间函数。下面实现了一个简单的python例子 # 阅读全文
摘要:
Hash Map 作业说明 Milestone 1: Const-Correctness 首先打开main.cpp,找到student_main()函数,这个函数是用来测试里程碑 1 的。首先这个函数本身应该是没有 bug 的但是这个函数调用函数的参数应该是const类型。 首先需要修改这些函数的定 阅读全文
摘要:
Design philosophy of C++ Allow the programmer full control, responsibility, and choice if they want it. 解释: C++ 强调程序员对代码的完全控制权,允许程序员在需要时直接管理内存、硬件资源等底层 阅读全文
摘要:
什么是仅标头库? 以下摘自维基百科 在一个C或者C++语言的程序代码中,一个在头文件便已包含了所有宏、函数和类的实现,而且在包含了头文件后这些实现都可以被编译器读取访问;以这种头文件所实现的函数库便叫做仅标头库或纯头文件函数库(Header-only)。仅标头库并不需要分开编译、数据包和安装即可使用 阅读全文
摘要:
在一些远古时代的ide中,代码总是需要编译、链接、运行。为什么需要这样做? 在学习 CMake 的前置 Makefile 时总是见到main.o。这又是什么? 因此我决定学习一下 C++ 是如何把代码编译为可执行程序的。 首先我写了如下代码 main.cpp #include <iostream> 阅读全文
摘要:
A. All-Star 每次操作至多可以把一个点插在根上,因此选择度数最多的点插在根上,然后根据深度标记边的方向。 #include <bits/stdc++.h> using namespace std; using i32 = int32_t; using vi = vector<int>; u 阅读全文
摘要:
A. 两只脑斧 #include <bits/stdc++.h> using namespace std; using i32 = int32_t; using i64 = long long; using vi = vector<int>; using pii = pair<int,int>; i 阅读全文
摘要:
这道题目是比较经典的树上阶梯博弈。 设一个点的深度是\(dep_i\),如果两个点\(i,j\)满足\(dep_i\not\equiv dep_j \mod k\),则两个点对答案的影响是完全独立的。 我们可以把图拆分为\(k\)部分,并且按照原图中的祖先关系把新图连接为\(k\)棵树。对于一个点\ 阅读全文
摘要:
B. osu!mania 按照题目的公式进行计算,注意四舍五入的精度问题。 #include <bits/stdc++.h> using namespace std; using i32 = int32_t; using i64 = long long; using ldb = long doubl 阅读全文