- 2024-11-21【模板】朱刘算法
【模板】朱刘算法#include<bits/stdc++.h>usingnamespacestd;constintN=1e5+2;introot,n,m;structEdge{ intu,v,w;}e[N];intid[N],vis[N],pre[N],incost[N];voidzhuliu(){ inttn=0; intres=0; while(1) { tn=0; for(inti=1;i<=n;i++){
- 2024-11-18Atcoder Beginner Contest 367
老规矩此处略过前三题,不过B值得关注一下。D题 Pedometer思路肥肠煎蛋,只需要搞一个前缀额然后看前面的前缀和是否有跟当前的前缀和同余的情况(%M)暴力求解这步是O(n^2)的,因此需要优化。这里就用到了一个技巧——哈希表消除分支。所谓的哈希表消除分支其实就是mp[pre_s]存一
- 2024-11-16Codeforces Round 986 (Div. 2)
CodeforcesRound986(Div.2)总结A按题意模拟即可,因为\(n,a,b\)很小,可以多循环几遍来判断。只循环十遍的吃罚时qwq。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#include<vector>#include<queue&
- 2024-11-16#1947 道路 || CF1214F Employment
不难观察到一个性质:可以找到一条边\((i,i+1)\),满足存在一个最优解,其所有匹配的路径不经过这条边,称之为分界线。可以调整证明。如果我们已知了分界线,不妨设为\((m,1)\)。那么最小权匹配就是类似括号匹配,贪心扫一遍即可。这个不是很好优化,考虑对每条边算贡献。不妨令两类点的权
- 2024-11-1511.15随笔
这里是11.15随笔。前两天玩的有点欢,忘写随笔了。作业留档:有两张非递增有序的线性表A,B,采用顺序存储结构,两张表合并用c表存,要求C为非递减有序的,然后删除C表中值相同的多余元素。元素类型为整型输入格式:第一行输入输入表A的各个元素,以-1结束,中间用空格分隔;第二行输入表B的各个元
- 2024-11-14CF1965F Conference
记录一个自己切掉的*3300。首先注意到这是个匹配问题,根据形式很容易想到hall定理。乍一看认为对于一段区间的判定只需要判定所有子串就行了。下面合法相当于是hall定理中的\(|S|\le|N(S)|\),满足条件则相当于是存在完备匹配。考虑这个怎么判,我先考虑了对于一个段\([l,r]
- 2024-11-12Linux 6.13 将提供对一系列 Pre-M1 苹果设备的基本支持
虽然不像苹果M3/M4设备支持上游主线Linux内核那样令人兴奋,但对于那些拥有一些较旧的苹果(M1之前)设备的用户来说,即将发布的Linux6.13内核将支持一些较旧的SoC和板卡。即将到来的Linux6.13合并窗口将支持大量旧版AppleSoC和板卡,但这只是最基本/初始形式的支持
- 2024-11-12识海社区打卡-3
CodeforcesRound986(Div.2)赛后补题战况如下:当然打完这场升绿了,虽然我也没想到。b题wa了很多发还是阅读理解的水平不太够,还没又补了一个样例说明我就看明白了不过还是wa了几发,不过确实用了我太长时间,欠训了。比赛时c题我没有去实现,不过看样例猜了一个方法,赛后看答案我才发
- 2024-11-11计数题 随机训练
CF578D这道题还是挺有意思的。题意简单,就是让你求出与模式串\(S\)长度均为\(len\)的最长公共子序列为\(len-1\)的字符串\(T\)的数量。首先在\(T\)固定的情况下求最长公共子序列,就是经典的dp式子,不再多说。那么对于dp式\(dp_{i,j}\)对\(dp_{n,n}\)最大贡献值
- 2024-11-11基于GSP工具箱的NILM算法matlab仿真
1.课题概述 基于GSP工具箱的NILM算法matlab仿真。GSP是图形信号处理的缩写,GSP非常适合对未知数据进行分类,尤其是当训练数据非常短时。GSPBox的基本理论是谱图论和图滤波,因此,GSPBox中的主要对象是图,图包括图的基本元素,如节点、边和权重矩阵等。 2.系统仿真结果
- 2024-11-10The 2024 ICPC Asia East Continent Online Contest (I) G
Link:TheMedianoftheMedianoftheMedian考虑二分答案,对中位数进行二分,每次去判断是否比中位数大即可。我们钦定了一个中位数\(x\),对于\(\{a\}\)数组,若\(a_i\gex\),则令\(a_i=1\),否则\(a_i=0\),这样有一个好处,我们只关心\(1\)和\(0\)的数量,就可以知道中位数
- 2024-11-1053. 最大子数组和
题目链接解题思路最大子数组问题,有两个基本的想法,以i开头的子数组结果是怎样的,求出所有的结果,最优的那个,就是答案;以i结尾的子数组结果是怎样的,求出所有的结果,最优的那个,就是答案。本题我们可以考虑,「以i结尾的结果是怎样的」,为啥?因为我们要求的是最大的累加和,我们求出了re
- 2024-11-10ABC 379(E-F)
ABC379E伪装高精的找规律题#include<bits/stdc++.h>usingnamespacestd;#definelllonglong#defineintlonglong#definepiipair<int,int>#definemkpmake_pairusingnamespacestd;constintN=3e5+5;intpre[N],ans[N];signedmain(){io
- 2024-11-10代码随想录算法训练营第18天| 530.二叉搜索树的最小绝对差, 501.二叉搜索树中的众数 , 236. 二叉树的最近公共祖先
530.二叉搜索树的最小绝对差文章链接:https://programmercarl.com/0530.二叉搜索树的最小绝对差.html视频链接:https://www.bilibili.com/video/BV1DD4y11779/?vd_source=6cb513d59bf1f73f86d4225e9803d47b题目链接:https://leetcode.cn/problems/minimum-absolute-difference-in
- 2024-11-09换根 DP
树形DP中的换根DP问题又被称为二次扫描,通常需要求以每个点为根时某个式子的答案。这一类问题通常需要遍历两次树,第一次遍历先求出以某个点(如\(1\))为根时的答案,在第二次遍历时考虑由根为\(u\)转化为根为\(v\)时答案的变化(换根)。这个变化往往分为两部分,\(v\)子树外的点到
- 2024-11-08二叉树的递归遍历和迭代遍历
递归每次写递归,都按照这三要素来写,可以保证大家写出正确的递归算法!确定递归函数的参数和返回值:确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数,并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。确定终止条件:写完了递归算法,运行的时
- 2024-11-07【论文精读】BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
【论文精读】BERT:Pre-trainingofDeepBidirectionalTransformersforLanguageUnderstanding作者:JacobDevlin,Ming-WeiChang,KentonLee,KristinaToutanova发表会议:NAACL2019论文地址:arXiv:1810.04805BERT是近年来NLP领域影响最大的模型。在CV领域,很早
- 2024-11-05动态规划
1.打家劫舍题目:打家劫舍滚动变量节省空间;因为不能连续取值,递推公式:当前最大值=max(上一个,上上一个+当前值)classSolution{public:introb(vector<int>&nums){intf0=0,f1=0;for(intx:nums){intnew_f=max(f1,f0+x);
- 2024-11-0411.4随笔
这里是11.4随笔。今日代码留档:实现单链表插入、删除结点等基本算法。语言:c++include<stdio.h>include<stdlib.h>structnode{intdata;nodenext;};intmain(){intn,m,c,a,b;scanf("%d",&n);nodehead,*pre,*p;head=newnode;head->next=NULL;pre
- 2024-11-04【笔记/模板】最近公共祖先(LCA)
最近公共祖先(LCA)定义最近公共祖先(LowestCommonAncestor)简称LCA。对于一个树上的两个节点的最近公共祖先,是这两个点中的公共祖先里面离根最远的一个。性质可见OIWiki。向上标记法过程在两点中取得深度较大的一个点,让它不停的向上跳,同时标记所经过的每一个点,直到根节点,接
- 2024-11-032024-11-03:得到更多分数的最少关卡数目。用go语言,Alice 和 Bob 正在进行一个有 n 个关卡的游戏,其中每个关卡要么是困难模式(possible[i] == 0),要么是简单模式(
2024-11-03:得到更多分数的最少关卡数目。用go语言,Alice和Bob正在进行一个有n个关卡的游戏,其中每个关卡要么是困难模式(possible[i]==0),要么是简单模式(possible[i]==1)。玩家在游戏中获得分数的规则如下:通过简单模式的关卡可得1分,而遇到困难模式的关卡将扣除1分。Alice从
- 2024-11-02决策单调优化动态规划
四边形不等式决策单调即对于dp方程\(f[i]=min/max(f[j]+w(j+1,i))\),设\(f[i]\)从\(pre[i]\)转移,有$\forall\i>j,pre[i]\lepre[j]$写出\(pre[]\)就是大概这种效果:111111224444444446666可以观察到决策单增,那么对于有序表,可以想到利用二分或分治等\(O(logn)\)的算法来优化
- 2024-11-02CW 11.02 模拟赛 FSYo T2
算法看到交换,这里有一个套路:确定最终的形态后,交换次数即为逆序对个数我们直接设\(f_{i,j,k,0/1/2}\)表示\(3\)种颜色填到哪里了,最后一个是什么颜色,逆序对数最少是多少转移分最后一个是什么颜色讨论关于\(O(1)\)求逆序对的方法:if(i==0&&a)f[a][b][
- 2024-11-02CF1848B Vika and the Bridge
思路:注意看,只有一次改变颜色,不要再苦苦打二分了!贪心地去求答案,对于每一种颜色记录两个点之间的距离的最大值和次大值,然后把最大值的那段区间的中点颜色更改成当前颜色。令最大值为maxx,次大值为max2。则min(⌊maxx/2⌋,max2) 即为最优解。记得处理到n+1 号点的距