刷新
CF161D Distance in Tree + 树上背包

博主头像 CF161D Distance in Tree DP状态定义 根据子树位置\(+\)路径长度的统计设计状态。 \(Dp_{u,j}\)表示在以 \(u\) 为根的子树中,到 \(u\) 的距离恰好为 \(j\) 的节点个数。 初始化 \[dp_{u, 0}=1 \]状态转移方程式 在合并子树时来统计 ...

断言及静态断言

博主头像 在c++11之前就已经有了断言,但是不是静态断言。 断言 断言是一种编程中常用的手段。在通常情况下,断言就是将一个返回值总是需要为真的判断表达式放在语句中,用于排除在设计的逻辑上不应该产生的情况。 一个函数总需要输入在一定的范围内的参数,那么程序员就可以对该参数使用断言,以迫使在该参数发生异常的时候 ...

博弈论总结(20260201)

博弈论 ICG 游戏 若满足以下条件: 游戏由两个人参与,两人轮流做出决策且必定对自己最有利; 当有一人无法做出决策时游戏结束,无法做出决策的人输,且无论两人如何决策,游戏都一定会结束(不会出现平局) 游戏中的同一个状态不可多次抵达,任意游戏者在某一确定状态下做出的决策只与当前状态有关,而与游戏者无 ...

【C++】实现一个定时器

博主头像 前言 实现一个周期性调用类。通过TaskTimer构造函数设置周期,通过setTimerFun传入要调用函数和参数,start启动,stop停止。比如要每30秒发送一个心跳包可以把发送包的函数传入定时器,定时器会创建一个线程周期性发送这个包。 实现 TaskTimer主要有开始、停止、设置调用函数与 ...

Parasoft是什么?Parasoft自动化测试工具与解决方案:实现规模化应用

博主头像 为保持竞争力,软件必须快速迭代。团队需要能够高效运转的测试解决方案,以确保交付安全、有保障且可靠的软件。借助为团队确定这些问题优先级的Parasoft自动化测试工具与解决方案,聚焦最重要的软件问题。借助 AI 增强的测试解决方案,优化软件缺陷与漏洞的修复流程。 ...

模板的优化

博主头像 嵌套时(比如printVector<vector<int>>)中的">>"的优化 在使用vector<int>时,本意是向模板中传入一个vector<int>类型的参数,但是编译器错误的将">>"识别为右移运算符,而不是模板参数表的结束。之前的解决方案是在">>"中间添加空格"> >"。 C++11 ...

C++测试

博主头像 1.如果在一个函数中的复合语句中定义了一个变量,则该变量( )。 A 只在该复合语句中有效 B 在本程序范围内有效 C 在该函数中有效 D 为非法变量 2.当函数的参数是普通变量时,关于函数的形参和形参,以下说法正确的是( )。\ A 实参和与其对应的形参共占用一个存储单元 B 只有当实参和与其对应 ...

【C++】网络编程

博主头像 前言 围绕Socket 的基础概念、I/O 模型,逐步实现阻塞 I/O 客户端 - 服务器、多进程 / 多线程服务端处理,以及基于 select、poll、epoll 的 I/O 多路复用服务端,侧重与如何实现。 什么是socket 在C++中,Socket编程是一种用于在网络上进行通信的技术,它允 ...

【C++】多线程

博主头像 前言 实现多线程(win32 API、pthread、std::thread)、线程同步(互斥量、原子变量、读写锁、条件变量、线程局部存储)、如何调试。 多线程 线程:是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程 ...

【C++】回调函数

博主头像 前言 学习回调函数,回调函数是通过函数指针或对象调用的函数。 回调函数就是通过函数指针或对象调用的函数,只要能一个函数能够作为参数传入并调用,这个函数就是回调函数。 #include <iostream> int addCallBack(int a,int b){//回调函数 std::cout < ...

【C++】智能指针

博主头像 前言 学习C++智能指针。 指针(Pointer)就是一个变量,其存储的是另一个变量的内存地址,理解指针是掌握 C++ 内存管理、数组、对象以及底层操作的关键。 为什么使用指针 1. 动态内存管理:在运行时根据需要申请内存(使用 new 和 delete)。原生数组(如 int a[10])的大小在 ...

【C++】移动语义和完美转发

博主头像 前言 学习C++移动语义和完美转发笔记,记录左值、右值、std::move()、万能引用、引用折叠等相关内容。 概念 左值 (lvalue) 它是在内存中有明确存储地址、可以被寻址的值。如果你可以对一个表达式取地址(使用 & 运算符),那么它就是一个左值。左值通常是持久的,在它所在的定义域结束之前一 ...

123···10>