- 2024-11-21KDTree求平面最长最短点对
更新日志前言不会细致讲解KDT内容,如有需要,出门左转KDTree。这篇文章以最常用的二维点集为例(包括模板),其他维度同理。思路(优化)我们考虑2-DTree,维护整个点集。最朴素的做法是,每次都将当前节点与标准点更新答案,并进入其两个子树计算。不难发现,就是暴搜,没有意义。引入一个重
- 2024-11-21『模拟赛』多校A层冲刺NOIP2024模拟赛25
Rank极限了,感觉还行感觉T3不是一般人可做的,遂先来写赛记。A.图签。本来不是很一眼的,但看到给了这个和这个然后就很一眼了。用longlong状压每个点所有操作下是否属于S/T集合的状态,那么发现对于一条边\((i,j)\),只有某一次操作满足\(i\inS\)且\(j\inT\)
- 2024-11-21gscoolink:gsv2001的sdk移植
1前言 以gsv的sdk的应用代码为例,将应用代码从m0核移植到m1核的mcu上; 因为用的是hal库,所以互相移植修改的并不多;实际改个头文件就可以编译了; 虽然我hal库用的是m1核的hal库,但是实际上我直接啥也没改,跑在m4核的gdf303上也没啥问题;2修改项目名 修改.uprojx的名字,
- 2024-11-2111.21
如何评价OI赛制无pretest仅有至多两个CF同等强度的极小样例?340->170是最好的答案。A.括号序列每个括号找出和它匹配的括号,同时求出\(pre_i\)和\(nxt_i\)分别代表与\(i\)同层的前缀括号匹配数和后缀括号匹配数,那么当前层给\(i\)贡献为\((pre_i+1)\times(suf_{r_
- 2024-11-21CF889E Mod Mod Mod DP
对于一个x我们发现最多只有\(\log\)次有效取模,但没啥用。我们发现\(dp\)数组(函数)是一个分段一次函数(等差数列),然后从第一个\(a_i\)开始考虑,发现每次只会多出一条线段(就是\(a_i-1\)这条)其他线段会翻折到下面,对于一条线段只会进行\(\loga\)次翻折,所以对线段的操作总次数
- 2024-11-2011.20
\(100+100+30+45=275\)开场\(10\)分钟,开始码A,码了一个小时无果删码跑路。十几分钟把B切了开始单挑C,失败。写完D暴力后剩30min,极限写完A。A:小H的积木把最上方和最下方的都加入线段树,如果有一个数加入了\(2\)次,就把它放入待选答案里面,每次选择最小的同时放入与
- 2024-11-20STM32 HAL 库硬件 I2C 驱动 MPU6050
MPU6050简介驱动文件mpu6050.h#ifndefINC_MPU6050_H_#defineINC_MPU6050_H_#include"i2c.h"//I2C通道配置#definehI2C&hi2c2//设备地址配置#defineMPU6050_ADDRESS_Write 0xD0//0x68左移一位补0#defineMPU6050_ADDRESS_Read0xD1//0x68左移一位补1
- 2024-11-20NOIP 模拟 8
A星际联邦直接贪,对于每个点,连前缀max,后缀min,再把前缀max和后缀min连,直接跑kruskal就行,因为对\(i\)连,确保了最小,然后再连确保了连通性。正解是无脑菠萝,维护不在同一连通块的最值和次值就行。#include<bits/stdc++.h>#defineintlonglong#definefifirst#define
- 2024-11-20CCC
include<bits/stdc++.h>defineintlonglongdefineAqrfre(x,y)freopen(#x".in","r",stdin),freopen(#y".out","w",stdout)defineth2seconddefineth1firstdefinempmake_pairdefineTypeintdefineqr(x)
- 2024-11-20洛谷 P1613 跑路 做题记录
前置芝士:最短路、floyd传递闭包、倍增思路看到题目里面的一次能走\(2^k\)千米,我们联想到倍增,因为只能用跑路器。我们枚举\(k\),然后做一次传递闭包,\((i,j)\)走\(2^k\)千米是相连的,当且仅当有一个点\(k\)是的\((i,k),(k,j)\)可以通过走\(2^{k-1}\)千米相连。此时,\((
- 2024-11-20NOIP 模拟 13
A草莓直接贪。B三色发现是有限制的动态规划问题,\(n^3\)很简单,直接在不合法的时候不转移就行了,然后发现转移很普通,有\(j,k\toj,k\\\j,k\toi,j\\\j,k\toi,k\),把后面两维看做矩阵形式,然后发现第一种没变,第二种和第三种相当于新加了一行,第二种是加列,第三种是加行,所以
- 2024-11-19Let'sGoFurther - Chapter 13: Sending Emails
File:internal/mailer/templates/user_welcome.html:{{define"subject"}}WelcometoGrrenlight!{{end}}{{define"plainBody"}}Hi,ThanksforsigningupforaGrrenlightaccount.We'reexcitedtohaveyouonboard!Forfuturere
- 2024-11-19「模拟赛」多校 A 层冲刺 NOIP 24
A.选取字符串KMP、字符串好题因为所有字符串都是大字符串的前缀,所以一旦我们每个字符串的前缀后缀的长度确定了,那么前缀后缀长什么样也就确定了设\(f_i\)为所有相同前缀后缀长度可以为\(i\)的字符串的个数我们枚举\(i\in[1,n]\),每次钦定两个串\(p、q\)里必须有一个是
- 2024-11-19暑假集训随笔3 dp进阶2
状压dp本身没啥可说的,这玩意主打一个技巧多。技巧1下面是一个用于枚举某个二进制数所表示集合的子集的二进制形式的代码。//S为二进制数for(intx=S;x;x=S&(x-1))cout<<x<<"";技巧2用一切方式避免直接进行严格\(O(n^2)\)的枚举,可以尝试用一些方式避开,如维护各个状态所
- 2024-11-18洛谷P1816忠诚
洛谷P1816忠诚思路查询区间最小值,\(ST\)表/线段树板子题代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglongconstintmaxn=2e5+5;constintinf=0x7f7f7f7f;structcustom_hash{ staticuint64_tsplitmix64(uint64_tx){ x^=
- 2024-11-18洛谷P2068统计和
P2068统计和思路单点修改+区间查询线段树/树状数组板子题代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglong#definelowbit(x)x&-xconstintmaxn=5e5+5;constintinf=0x7f7f7f7f;structcustom_hash{ staticuint64_tsplitmix64
- 2024-11-18洛谷P5057简单题
P5057[CQOI2006]简单题这是题面思路每次操作,直接区间加\(1\),最后求结果的时候对\(2\)取余就好了这个题就是区间修改+单点查询可以用树状数组或者线段数维护代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglong#definelowbit(x)x&-xconstint
- 2024-11-18NOIP2024加赛6
NOIP2024加赛6\(T1\)P323.草莓\(60pts\)部分分\(60pts\)先将\(\{x\},\{y\}\)降序排序,状态转移方程为\(f_{i,j}=\min(f_{i-1,j}+x_{i}(j+1),f_{i,j-1}+y_{j}(i+1))\),边界为\(f_{0,0}=0\),最终有\(f_{n-1,m-1}\)即为所求。若费用提前计算则需要将\(\{x\}
- 2024-11-18Codeforces Round 988 (Div. 3) A~D
CodeforcesRound988(Div.3)A.Twice这个题就是简单的贪心题,在相同大小的元素里面,我们只能选择两个来对评分更新,所以最多能更新(相同元素的个数)/2次,记录相同元素的个数就行了//Problem:A.Twice//Contest:Codeforces-CodeforcesRound988(Div.3)//URL:https
- 2024-11-18关于ESP32透明小电视TFT白屏问题
前言最近在复刻DID迪大佬的ESP32+TFT+分光棱镜实现透明小电视项目,但烧录了TFT_Test代码之后TFT出现了白屏,翻遍了评论区也没找到合适的解决办法,后来想到是不是引脚宏定义有问题,不试不知道,一试发现问题就是这样点此链接跳转到DID迪大佬的ESP32+TFT+分光棱镜实现透明小电视项
- 2024-11-18洛谷 P3226 [HNOI2012] 集合选数 做题记录
我们先建一个矩阵:\(\begin{bmatrix}1&2&4&8&16&32\\3&6&12&24&48&96\\9&18&36&72&144&288\\27&54&108&216&432&864\end{bmatrix}\)
- 2024-11-18题解:CF contest 2037 : [Codeforces Round 988 (Div. 3)] (A-E)
ATwice题面Kinich醒来迎接新的一天的开始。他打开手机,查看邮箱,发现了一份神秘的礼物。他决定打开礼物的盒子。Kinich用\(n\)整数打开数组\(a\)。最初,Kinich的分数是\(0\)。他将执行任意次数的以下操作:—选择两个索引\(i\)和\(j\)\((1\leqi\lt;j\leqn)\),确
- 2024-11-17#define定义宏
#define机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏或定义宏。宏的申明方式:#definename(parament-list)stuff其中的parament-list是一个由逗号隔开的符号表,它们可能出现在stuff中。注意:1.参数列表的左括号必须与name紧邻2.如果两者之间有任何空白存在,参数
- 2024-11-17log 工具
#defineBUF_MAX_SIZE(1024)enum{SILENCEFATALERRORNOTICEINFODEBUGTRACE}voidpr_logs(intlevel,constchar*fmt,...);intg_level=INFO;#definemlog_trace(fmt,...)pr_logs(TRACE,"[%s][%d]"fmt,__FUNCTION__,__LINE__,##__V
- 2024-11-17[题解]AtCoder Beginner Contest 380(ABC380) A~F
A-123233照题意统计即可。点击查看代码#include<bits/stdc++.h>usingnamespacestd;strings;map<char,int>ma;signedmain(){ cin>>s; for(chari:s)ma[i]++; if(ma['1']==1&&ma['2']==2&&ma['3']==3)co