tot
  • 2024-07-032024.07 别急记录
    1.CEOI2023-Balance考虑\(S=2\)。令\((a_{i,j},j+T)\)连一条无向边,若\(a_{i,j}\)度数为奇数则连\((a_{i,j},S+T+1)\),在这张图上跑出一个欧拉回路,则对边进行定向后每个题目入度与出度相同,去掉点\(S+T+1\)后入度与出度差\(1\),刚好符合题目要求。于是若欧拉回路中\(j+T
  • 2024-07-03AT_arc180_a [ARC180A] ABA and BAB 题解
    思路首先一个浅显易得的结论,当\(A\)或\(B\)连续出现时,我们可以将它们分成两段,每段都可以看作一个独立事件,结果数只和每个独立事件的样本点有关。我们设独立事件共有\(tot\)个,每个独立事件的样本点为\(w_i\),则显然有\(ans=\prod_{i=1}^{tot}w_i\)。接下来该找\(w_i\)
  • 2024-07-01CF631D Messenger (kmp + 字符串处理)
    CF631DMessengerkmp+字符串处理思路简单,写起来细节比较多首先要合并同类项,然后再考虑什么时候\(s=t\)。如果合并后\(t\)有一种或两种字符,那么都可以直接做;大于两种,我们发现匹配的条件为:中间部分完全相同,首尾字符相同并且\(s\)首尾字符的数量要大于\(t\)。中间部分完
  • 2024-06-20【CF1773K】King‘s Puzzle(构造)
    King‘sPuzzle题目链接:CF1773K题目大意要你构造一个n个点的无向图,让所有点之间连通且无重边,且所有点的度数恰好有k种。输出方案或无解。思路高考完来复建了/hsh首先发现全部连成环就是\(m=1\)。然后思考最多能有多少种度数。然后发现除了\(1\1\)可以之外,一定要
  • 2024-06-11题解:P5786 [CQOI2008] 传感器网络
    题意从一个\(n\)个结点的有向无环图里选出\(n-1\)条边,构成一棵树,且除根节点以外的点的儿子个数的最大值最小。输出满足题意的节点的父亲,要求字典序最小。思路我们肯定要先把最小值求出来。很容易看出是拆点+二分答案求解,这里要注意的是拆完的两个点是不用连起来的,将
  • 2024-06-11P3267 JLOI2016/SHOI2016 侦察守卫
    P3267JLOI2016/SHOI2016侦察守卫互相赋值的双dp思路设\(f[u][i]\)表示包括\(u\)子树内所有关键点都被覆盖(包括\(u\)),且至少还可以向\(u\)的父亲方向覆盖\(i\)层的最小代价。设\(g[u][i]\)表示向下距离大于等于\(i\)的点全部被覆盖,剩下距离小于\(i\)的点随意
  • 2024-06-06P6419 COCI2014-2015#1 Kamp
    P6419COCI2014-2015#1Kamp换根\(dp\)的trick。题面钦定\(k\)个关键点,求每个点出发,访问完所有关键点的距离最小值。思路设\(g_u\)为从点\(u\)出发,访问完子树内所有关键点后,回到点\(u\)的距离最小值。\(s_u\)为点\(u\)子树内关键点个数,\(E(u,v)\)为边权。\[
  • 2024-06-04Luogu P2036 [COCI2008-2009 #2] PERKET
    LuoguP2036[COCI2008-2009#2]PERKET#include<bits/stdc++.h>usingnamespacestd;intn,ans=1e9+5;//ans初始化值大于所有可用食材全部使用产生的总酸度和总苦度ints[15],b[15];voiddfs(inttot,intk,intl){//k为当前酸度,l为当前甜度if(to
  • 2024-05-27概率与期望
    A.绿豆蛙的归宿\(f[x]\)表示从x走到终点经过的路径的期望长度。从\(x\)出发经过\(k\)条边,则有:\[f[x]=\frac{1}{k}\sum_{i=1}^{k}(f[y_i]+z_i)\]由于\(f[N]=0\),所以从终点出发在反图上跑拓扑排序。点击查看代码#include<bits/stdc++.h>#definekw0usingnamespac
  • 2024-05-21Codeforces 1974G Money Buys Less Happiness Now
    考虑到有一种贪心的思路就是能选就选。显然这是错的,因为可能存在后面更优的情况,即当\(c_i>c_j(i<j)\)时,选\(j\)肯定比选\(i\)更优,因为后面剩下的更多且中间也留下了一些。于是考虑反悔贪心。还是一样的,如果能选就一定选上。否则来说,考虑对于当前已经选了的中的最大
  • 2024-05-20C++常用模板
    常用模板:1.组合数(注意\(N\)与\(mod\))点击查看代码#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstllN=1e3+10,mod=998244353;lln,a[N],jc[N],dp[N],ans;voidinit(){ jc[0]=1; for(inti=1;i<N;i++)jc[i]=jc[i-1]*i%mod;}llksm
  • 2024-05-18AT_abc352_e
    题意给定一个有\(n\)个点的图,初始没有任何边。接下来有\(m\)次操作,每次操作给定一个大小为\(k\)的集合\(S\)和一个权值\(c\),并对所有\(u,v\inS\)并且\(u<v\)的点\(u,v\)连上一条边权为\(c\)的边。\(m\)次操作后,判断图的连通性,若图联通则需求出其最小生成树
  • 2024-05-18CF527E Data Center Drama 题解
    @目录题目题意题解思路详解注意事项代码AC记录尾声题目CF527EDataCenterDrama·戳这里题意给定一张$n$个点$m$条边的连通无向图。你需要加尽可能少的边,然后给所有边定向,使得每一个点的出入度都是偶数。边可以是自环,也可以有重边。$n\le10^5$,$m\le2\times1
  • 2024-05-16CF1019C Sergey's problem
    CF1019CSergey'sproblem很巧妙的构造题。思路首先我们可以把这题分成两个部分:解决覆盖问题解决边冲突问题\(vis_i\)为\(i\)点是否被覆盖的标记,\(cis_i\)为\(i\)点是否被选的标记。part1覆盖问题从小到大枚举\(i\),对于点\(i\)如果它没被覆盖,那么我们把点\(i
  • 2024-05-15春季第九次
    tot[now]=i;dfs(now+1);//显式回溯:撤销之前的选择tot[now]=0;没有显式回溯隐式回溯是利用系统栈1构造题(智慧题)//构造有n个数的A数列(1到m的排列)满足题目给的q组要求求最大的maxtot[a[i].b]tot数组存的是A数列的值tot[now]=i构造好数列有q次询问1到q一次
  • 2024-05-15MindSponge分子动力学模拟——自定义控制器(2024.05)
    技术背景分子动力学模拟中的控制器(Controller)可以被用于修改模拟过程中的原子坐标和原子速度等参量,从而达到控制系统特定参量的目的。例如控温器可以用于实现NVT系综,控压器可用于实现NPT系综。而在MindSponge分子动力学模拟框架下,控温控压都可以基于控制器Controller来实现。关于
  • 2024-05-14二分图
    关于二分图判断是否为二分图左部和右部的点之间不存在连边,即不存在奇环;codes点击查看代码#include<bits/stdc++.h>usingnamespacestd;constintmaxn=1e5+10;intn,m,tot;intto[maxn*2],nxt[maxn*2],w[maxn*2],h[maxn];intcol[maxn],x[maxn],y[maxn],z[maxn];
  • 2024-05-13考试解析(除T4外)
    T1攻击装置题目就不描述了吧其实就是二分图板子,连边的时候注意每个点标号怎么算,不能是\(i*j\),是\((i-1)*n+j\)千万注意啊。其次是加边的时候注意判断减的时候是判断>=1加的时候是判断<=n错误codeQAQ//未过且不对QAQ#include<bits/stdc++.h>usingnamespacestd;con
  • 2024-05-12超级英雄Hero
    前言:不知道为啥洛谷上好多用妙计之间连边,我用的问题和妙计之间连的,写个题解记录一下题目描述现在电视台有一种节目叫做超级英雄。大概的流程就是每位选手到台上回答主持人的几个问题,然后根据回答问题的多少获得不同数目的奖品或奖金。主持人问题准备了若干道题目,只有当选手正
  • 2024-05-06整体二分学习笔记
    最近准备学数据结构乱搞,接下来学k-dtree大致介绍可以使用整体二分解决的题目需要满足以下性质:1.询问的答案具有可二分性2.修改对判定答案的贡献互相独立,修改之间互不影响效果3.修改如果对判定答案有贡献,则贡献为一确定的与判定标准无关的值4.贡献满足交换律,结合律,具有可加
  • 2024-05-05整体二分
    1概念在很多题目中,我们可以使用二分法来得出答案。但是如果说这一类题目有多次询问,并且多次询问分别二分会TLE时,我们就需要引入一个东西叫整体二分。整体二分的主要思路就是将多个查询一起解决,因此它是一种离线算法。整体二分的具体操作步骤如下:首先记\([l,r]\)为答案的
  • 2024-05-03CF940F.Machine Learning-带修莫队、Mex
    给一个序列\(a\),两个操作:1、给\(l,r\),设\(a_l,\dots,a_r\)这些数集中每个数\(v\)的出现次数是\(c_v\),要求\(\mathrm{mex}(c_i)\).2、单点修改\(1\leqn,q\leq10^5\),时限4s这种一眼看过去很难维护的信息,一般就先找找性质。首先注意到关键性质:要求的是出现次数
  • 2024-04-25POI2012SQU-Squarks
    POI#Year2012#数学考虑如果将\(x_i\)和\(sum_i\)都排序,那么\(sum_1=x_1+x_2\),\(sum_2=x_1+x_3\)考虑枚举一个\(sum_i=x_2+x_3\),此时就可以确定\(x_1,x_2,x_3\)假设当前确定到\(i\),将已经确定的\(x_i\)组成的\(sum\)去掉,剩下的最小的\(sum\)一定为\(x_1+x_{
  • 2024-04-18[题解][洛谷P1174] 打砖块
    题目分析n行m列的砖块,起始有k发子弹。每次可以用一发子弹,打碎某一列当前处于这一列最下面的那块砖,并且得到相应的得分。某些砖块打碎以后会获得一个砖块。求最大得分。题解可以看出是一道动态规划题。关键在于如何设计状态。先考虑砖块打碎不会得到子弹的情况:这个时候可以
  • 2024-04-16oracle表空间扩充
    一、查询表空间使用情况SELECTUPPER(F.TABLESPACE_NAME)"表空间名",D.TOT_GROOTTE_MB"表空间大小(M)",D.TOT_GROOTTE_MB-F.TOTAL_BYTES"已使用空间(M)",TO_CHAR(ROUND((D.TOT_GROOTTE_MB-F.TOTAL_BYTES)/D.TOT_GROOTTE_MB*100,2),'990.99')&q