• 2024-11-21VC++ 中的宏 (#define) 与预处理 (#if/#ifdef/#pragma) 的使用总结
    关键字:宏,预定义宏,预处理,预编译头,VC,#pragma,编译选项,程序区段目录C/C++预定义宏例子:C/C++预定义宏的取值C/C++预定义宏用途:诊断与调试输出CRT的诊断与调试输出:assert,_ASSERT/_ASSERTE,_RPTn/_RPTFn/_RPTWn/_RPTFWnMFC的诊断与调试输出:ASSERT/VERIFY,ASSERT_V
  • 2024-11-20P11290 【MX-S6-T2】「KDOI-11」飞船 题解
    注意到速度的形式是编号相乘,而又有\(x\in\{1,2,3,4\}\),所以最多\(\log_2y_i\)次速度就会达到\(10^9\)量级,而此时再加油最少需要\(1\)秒,所以再乘一定不优。直接dp,有\(f_{i,j,k}\)表示当前在第\(i\)个加油站,速度为\(2^j3^k\)的最短用时,后面的\(2^j3^k\)可以
  • 2024-11-20Unity图形学之Surface 片段着色器
    1.结构:经常在片段着色器里做一些UV变换#pragmasurfacesurfLambertfinalColor:mycolorvertex:myvert2.InputStruct 成员变量:(1)Uv+纹理变量的名字structInput{float2uv_MainTex;};(2)还有其他的:3.片段着色器的输出:inout
  • 2024-11-12gym103102H AND = OR 题解
    非常巧妙的一个题。我们首先考虑单组询问该怎么做。首先需要注意到一个结论,即设答案为\(x\),那么对于\(\forally<x\),\(y\)都应该放在与组;同样的,对于\(\forally>x\),\(y\)都应该放在与组。进一步的,我们观察在\(\text{popcount}\)上也有同样的性质,即对于\(\forally,
  • 2024-11-10【C/C++】5.字节对齐和字节填充
    字节对齐(alignment)和字节填充(padding)是优化内存访问效率和确保数据结构正确存储的重要机制。了解字节对齐和填充的原理可以帮助我们更好地设计数据结构,并且减少因不合理的内存布局引起的性能问题或程序错误。1.字节对齐(Alignment)字节对齐是指在内存中存储数据时,将数据
  • 2024-11-09入门级卡常
    1.火车头#pragmaGCCoptimize(3)#pragmaGCCtarget("avx")#pragmaGCCoptimize("Ofast")#pragmaGCCoptimize("inline")#pragmaGCCoptimize("-fgcse")#pragmaGCCoptimize("-fgcse-lm")#pragmaGCCoptimize(&q
  • 2024-11-07【Semantic Kernel】RAG(检索增强生成)
    RAG(Retrieval-AugmentedGeneration)是一种结合信息检索和生成模型的自然语言处理方法。它通过检索相关文档片段作为生成模型的上下文,提高生成文本的准确性和相关性。RAG广泛应用于问答系统、对话系统和文本摘要等领域,兼具高效性和灵活性。公司的客户机器人都特别适合。下面的案例
  • 2024-11-03【模板】缺省源
    Debuginlinevoiddebug(){cerr<<'\n';}template<typenameType,typename...Other>inlinevoiddebug(constType&x,constOther&...y){cerr<<x<<'';debug(y...);}#defineDEBUG(a...)cerr<
  • 2024-10-30Max Mex
    MaxMex和线段树维护直径集合一样的trick。思路如果一条路径\(a\)包含\([l,r]\)权值中的所有点,另一条路径\(b\)包含和\([x,y]\)权值中的所有点构成的。那么对于一条路径包含\([l,r]\cup[x,y]\)权值中的点,其端点一定在\(a\)和\(b\)的端点间出现。其条件就是,有
  • 2024-10-19P10532 [XJTUPC2024] 筛法 题解
    ~~打表可知答案为$n^2$~~一种几何证明,方法来自于讲评。考虑把$n^2$个整点放到坐标系中,满足$(x,y)(x\len,y\len)$。现在从原点向每个满足$(x,y)(x\perpy)$的点引出一条射线,显然每个点都会唯一的被一条射线覆盖到,因为$(\dfrac{x}{\gcd(x,y)},\dfrac{y}{\g
  • 2024-10-19P6533 [COCI2015-2016#1] RELATIVNOST 题解
    考虑当$q=0$时怎么做。注意到性质$c\le20$,因此不妨正难则反,将**至少有$c$个人购买彩色画**的方案数转化为总方案数减去**不足$c$人购买彩色画的方案数**。这个是一个类似凑数的dp,不妨考虑背包。我们有$f_{i,j}$表示前$i$人中**恰好**$j$人购买彩色画的方
  • 2024-10-13[C++][第三方库][ODB]详细讲解
    目录1.介绍2.安装1.安装build22.安装odb-compiler3.安装ODB运行时库4.安装MySQL和客户端开发包5.安装boostprofile库6.总体操作7.测试样例3.ODB常见操作1.ODB类型映射2.ODB编程1.指令2.示例4.类与接口5.使用1.介绍ODB框架:数据库ORM框架-->对象关系映
  • 2024-10-12你了解#pragma once吗
    什么是#pragmaonce#pragmaonce是一个预处理器指令,用于指示编译器只包含一次该文件。这意味着无论头文件在项目中的其他文件中被多次#include,编译器只会处理一次,从而避免重复定义的问题。作用:确保当前文件在一个编译单元(TranslationUnit)中只被包含一次。用途:防止同一个
  • 2024-10-10高一上十月中旬日记
    10.11闲话做题纪要luoguP3345[ZJOI2015]幻想乡战略游戏luoguP5311[Ynoi2011]成都七中[ABC373F]KnapsackwithDiminishingValues暴力分组背包写个常数小点的加\(C++20\)加手动开\(O3\)就过了(赛时直接把火车头粘上了),算下来\(AT\)神机能跑\(1e10\)。点
  • 2024-10-10gjoi 2024.10.9
    当天在家里躺尸看t1过不了就去睡觉了,还好没写卡场Round哦/cf怎么有人吃错了一整盒退高烧药啊/wqT1游戏升级考虑有多少\(x\in[1,n]\)满足\(b_1+\lfloor\frac{a_1}{x}\rfloor=b_2+\lfloor\frac{a_2}{x}\rfloor\),直接对下取整做整除分块即可。gjoj卡常所以开longl
  • 2024-10-04高一上十月上旬日记
    10.1闲话做题纪要10.2闲话做题纪要10.3闲话做题纪要luoguP3241[HNOI2015]开店不难发现两个点在点分树上的\(\operatorname{LCA}\)是一个求距离的好的分割点,考虑点分树。暂且不考虑\([l,r]\)的限制,因为只是一个限制范围的查找。设\(siz_{x}\)表示点分树
  • 2024-09-26「FJWC2020Day5-zzq」rng 题解
    题意简述一个长度为\(n\)的实数序列\(a_i\),其中\(a_i\)为\([l_i,r_i]\)中独立均匀随机选取的实数。你只能通过交换相邻两个数,使得\(a_i\)单调不降。你需要求出你最少操作次数的期望,对\(M=998244353\)取模。\(1\leqn\leq10^6\),\(0\leql_i\ltr_i\leq10^{1
  • 2024-09-20gjoi 9.19
    常数太大挂分绝美哈,感觉是oj不带o2但是我用了不少吸氧才快点的东西。T1困难卷积\(O(n\sqrtn)\)感觉跑的太不过了,注意到\(\suma_i,\sumb_i\leq10^7\),我们不妨让大\(a/b\)的找小的\(b/a\)贡献,这样子复杂度是\(O(\sum\sqrt{a_i}+\sum\sqrt{b_i})\)的,轻松通过此题
  • 2024-09-19C++代码编译过程
    代码转换成可执行文件的全过程看了一些网上的文章,觉的还是自己写写看看才能理解通透,也为找简历做准备。代码转换成可执行文件分为4个步骤,预处理、编译、汇编、链接。预处理这个过程是执行代码中的一些预处理指令,多说无益,直接上代码#include<iostream>#defineBesttrue;#i
  • 2024-09-02【树莓派开发】gcc编译器中出现warning: #pragma once in main file
    众所周知,#pragmaonce语句是防止头文件重复包含非常常用的一条语句VS编译器在创建.h文件的时候会自动帮你在开头添加这个语句但是在gcc编译器下,这个语句就可能会出现一些问题所使用编译器:VS2019(windows10)树莓派(linux-gcc)warning:#pragmaonceinmainfile在我尝试在linux环境
  • 2024-08-29C++火车头修订版
    #pragmaGCCoptimize(3)#pragmaGCCtarget("avx")#pragmaGCCoptimize("Ofast")#pragmaGCCoptimize("inline")#pragmaGCCoptimize("-fgcse")#pragmaGCCoptimize("-fgcse-lm")#pragmaGCCoptimize("-f
  • 2024-08-26【C语言】宏定义详解---老公出轨版 (づ◡﹏◡)づ
    目录C语言宏定义详解1.宏定义关键词总览2.`#define`3.`#undef`4.`#ifdef`5.`#ifndef`6.`#if`7.`#else`8.`#elif`9.`#endif`10.`#include`11.`#error`12.`#pragma`12.1`#pragmaonce`12.2`#pragmapack`12.3`#pragmawarning`12.4`#pragmaGCC`13.`#li
  • 2024-08-19C++图笔记(三)有向无环图(及最小生成树(略))以及剩下的排序
    目录一,定义:1,有向无环图 2,拓朴排序 1,每个顶点出现且仅仅出现一次。 2,若存在一条从顶点A到顶点B的路径,那么在序列中顶点A出现在顶点B的前面。二,DAG的性质性质1.  从任意一个起点进行dfs,必不会陷入死循环。性质2.  入度为0的点信息确定,删掉入度为0的点
  • 2024-08-17杂项
    位运算加速技巧乘/除以\(2^n\),改为<<n或>>n交换两个数,swap(a,b)改为a^=b,b^=a,a^=b小数转整数,(int)3.14改为3.14>>0正负号转换,x=-x改为x=~x+1当\(x=2^n\)时,%x改为&(x-1)检查是否整除\(2\)时,i%2改为i&1求绝对值,abs(x)改为(
  • 2024-08-12CF896E Welcome home, Chtholly
    [题目通道](Welcomehome,Chtholly-洛谷)#include<iostream>#pragmaGCCoptimize(1)#pragmaGCCoptimize(2)#pragmaGCCoptimize(3)#pragmaGCCtarget("avx")#pragmaGCCoptimize("Ofast")#pragmaGCCoptimize("inline")#pra