ICode9

精准搜索请尝试: 精确搜索
  • c++模板中的“无用”虚拟类2022-08-06 19:02:41

    我看到这样的一段代码: // // Created by admin on 2022/8/6. // #ifndef COROUTINE_PRINTER_H #define COROUTINE_PRINTER_H #endif //COROUTINE_PRINTER_H #pragma once #include <iostream> #include <utility> namespace std { template <class T,

  • STL堆排序&时间复杂度分析2022-08-06 12:43:54

    1. 逻辑&时间复杂度分析 pop 和 initialize 的时间复杂度请参考: [DSAAinC++] maxHBLT的合并&初始化&时间复杂度分析 将数组初始化为一棵 max heap, 时间复杂度为 \(O(n)\). max heap 的 root 必然是所有 node 中最大的. 排序就是利用这个性质, 将 max heap 的 root 不断 pop 出

  • HDU多校第五场 P7187(分层图建虚拟原点)2022-08-05 12:32:55

    Slipper &ebsp; 题意: 我们知道有\(n\)个节点,有\(n - 1\)条边,所有的点形成了一棵树,每一个点到下一个点都有代价\(cc\),我们也有一个操作,可以将满足\(\left\vert depth_i - depth_j\right\vert = k\)的所有点联通,连起来的新的边的代价是\(c\),要我们求从出发点到目的地的最小代价是

  • C++进制转换2022-08-05 11:03:18

    C++中,如果进行二进制转换   #include<iostream> #include<bitset> using namespace std; #define unsigned int uint32_t void transferRadix(int n){ cout << "hex: " << std::hex << n << endl; cout << "dec: &q

  • MacBook上VSC无法打开源文件 "bits/stdc++.h"2022-08-04 18:32:20

    今天在VSC上碰到该问题,记录解决问题过程。 一、如何解决头文件找不到? 问题:检测到 #include 错误。请更新 includePath。已为此翻译单元(/Users/wangjiaqi/02-workspace/1.cpp)禁用波形曲线。 更新gcc --> 需要安装homebrew <img src="https://user-images.githubusercontent.com

  • 实践:二进制数据处理与封装2022-08-04 16:01:04

    实践:二进制数据处理与封装 作者:哲思 时间:2022.8.4 邮箱:zhe__si@163.com GitHub:zhe-si (哲思) (github.com) 前言 最近在研究所做网络终端测试的项目,包括一些嵌入式和底层数据帧的封装调用。之前很少接触对二进制原始数据的处理与封装,所以在此进行整理。 以下例子主要以 c++ 语言

  • Codeforces Round #811 (Div. 3)2022-08-02 02:00:39

    咕咕咕。 D. Color with Occurrences 题意 给定文本串\(t\),和\(n\)个模式串\(s_i\)。 初始时\(t\)的每个字符都是黑色的,如果\(t\)的某个子串和\(s_i\)相等,则可以通过一次染色将这个子串中的字符都染成红色。 一个模式串可以用多次,\(t\)中的一个字符可以被染色多次,红色的字符再次

  • C++11 smart pointer 之 weak_ptr(附源码链接)2022-07-31 22:31:08

    std::weak_ptr weak_ptr源码链接 (与shared_ptr在同个.h文件) 定义于头文件 <memory> template< class T > class weak_ptr; (C++11 起) std::weak_ptr 是一种智能指针,它对被 std::shared_ptr 管理的对象存在非拥有性(“弱”)引用。在访问所引用的对象前必须先转换为 std::shared_p

  • 记录自己从零开发2D游戏引擎的过程(1)2022-07-31 16:05:08

    这个项目已发布在github上:https://github.com/zenitsh/glbox2d 因此以后不会贴大段代码。 6.创建Object类 Unity使用了GameObject存储游戏对象,Godot Engine使用了Node,因此我们也需要一个游戏对象类。这个过程中也踩了不少坑,大多数是C++的坑。 上次说b2Body可以直接使用,但是实际上

  • P2704 [NOI2001] 炮兵阵地 -状态压缩dp -省选2022-07-31 12:00:22

    #include <bits/stdc++.h> #define debug(x) std::cerr << "Line: " << __LINE__ << \ "," << #x << "=" << x << "\n" using ll = long long; constexpr in

  • 模拟赛-物品2022-07-30 17:04:47

    物品 题意 有 \(2m+1\) 种物品,重量分别为 \(-m,-m+1,\ldots, m-1,m\)。重量为 \(i\) 的物品有 \(a_i\) 个。 你需要拿走若干物品,使得这些物品重量之和恰好为 \(l\)。在此基础上,你需要拿尽可能多的物品。 问在物品重量之和恰好为 \(l\) 的基础上,你最多能拿多少物品。 题解 先贪心的

  • 模拟赛-水晶2022-07-30 16:04:50

    水晶 题意 给定长度为 \(n\) 的序列 \(\{m_n\}\) ,求满足条件的 \(\{a_n\}\) 的个数,条件是 \(\forall i\),\(0\le a_i\le m_i\)。 \(\oplus_{i = 1} ^ n a_i = 0\)。 答案对于 \(998244353\) 取模。 数据范围 \(0\le m_i<2 ^ {32}, 1\le n\le 2\times 10^{5}\)。 题意 本来的想法

  • 一、HELLO,C++2022-07-29 22:04:51

    hello,大家好,我是你们的新朋友,你们可以叫我小潘~ 或许大家是第一次见到我,也有可能是其他平台过来的,我都要给大家作个自我介绍:我是来自河北石家庄的一名新初一学生。我热爱编程技术,擅长Python、C++和命令行(Windows批处理),目标是信息学竞赛。 我的同学们都说我很幽默,甚至有人说我“不

  • C++实现简单的线程池2022-07-29 19:31:47

    // thread_pool.h #pragma once #include <vector> #include <deque> #include <thread> #include <functional> #include <condition_variable> class ThreadPool { using Task = std::function<void()>; using TaskList = std

  • 蔚来杯2022牛客暑期多校训练营12022-07-28 00:33:59

    比赛链接 A 题解 知识点:贪心。 将区间按左端点排序,合并区间,记录所有区间之间断开的长度即可。 时间复杂度 O(nlogn)O(nlog⁡n) 空间复杂度 O(n)O(n) 代码   #include <bits/stdc++.h>   #define ll long long       using namespace std;       struct n

  • luogu P2261 [CQOI2007]余数求和 (数论分块)2022-07-28 00:31:06

    这题要推一下式子,注意涉及到取模的式子都要尽量展成减去下取整的形式。     注意,这里求和符号是求到n,因此分块里面 l 的范围就是l<=n,然后对于n大于k的情况需要特判一下。 1 #include "bits/stdc++.h" 2 using namespace std; 3 typedef long long LL; 4 LL n,k; 5 int m

  • 模板——多项式2022-07-27 18:36:07

    多项式乘法 #include<bits/stdc++.h> using namespace std; const int N=(1<<18),P=998244353,G[2]={3,(P+1)/3}; int rv[N],gp[2][N],iv[N]; inline int fpw(int a,int x){ int s=1; for(;x;x>>=1,a=1ll*a*a%P) if(x&1) s=1ll*s*a%P; return s;

  • ZLMedia中RTCP协议的处理简要分析(4)--source description)2022-07-27 17:37:56

          class RtcpHeader { public: #if __BYTE_ORDER == __BIG_ENDIAN //版本号,固定为2 uint32_t version: 2; //padding,固定为0 uint32_t padding: 1; //reception report count uint32_t report_count: 5; #else //reception report count

  • C++初始化列表2022-07-27 14:36:28

    语法:构造函数():属性1(值1),属性2(值2),…{} #include<iostream> using namespace std; class WLM { public: WLM(int a,int b,int c):m_a(a),m_b(b),m_c(c) { } int m_a; int m_b; int m_c; }; void test() { WLM zjy(10,20,30); cout <<

  • ssl 使用流程是如何的(仅供参考)?2022-07-27 10:34:59

    #include <QCoreApplication> #include <chrono> #include <thread> #include <memory> #include <openssl/ssl.h> struct SSL_CTX_Deleter { void operator()(SSL_CTX* object) { SSL_CTX_free(object); } }; struct SSL_Deleter {

  • C++ 中的Lambda表达式2022-07-27 00:33:12

    目录简介捕获原理Lambda回调参考 简介 Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。 闭包就是能够

  • map2022-07-26 20:32:00

    unordered_map<int,int>a; unordered_map<int ,int>::iterator it; it=a.find(8); if(it==a.end())chu("no");   find找的是前面的键值 unordered_map<int,int>mymap; for ( auto it = mymap.begin(); it != mymap.end(); ++it ) std::cout <

  • 刷洛谷题单【数据结构2-1】2022-07-26 05:31:53

    P1090 合并果子 题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 \(n-1\) 次合并之后, 就只剩下一堆了

  • C++ 快速读取大文件2022-07-25 19:00:34

    方法一、 clock_t start = clock(); ifstream fin(objpath,std::ios::binary); vector<char> buf(fin.seekg(0,std::ios::end).tellg()); fin.seekg(0,std::ios::beg).read(&buf[0],static_cast<std::streamsize>(buf.size())); fin.close(); clock_t end = cl

  • c++类型萃取2022-07-25 18:01:52

    判断两个类型的关系 #include <iostream> #include <type_traits> using std::cout; using std::endl; // is_same is used to judge two data types same or not during compiling void test_is_same() { cout << "test is_same:" << endl;

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有