首页 > 其他分享 >2024.4 第一周做题记录

2024.4 第一周做题记录

时间:2024-04-04 12:34:10浏览次数:21  
标签:连通 2024.4 题意 记录 第一周 leq 枚举 operatorname

\(2024.4.2\) CF1336D Yui and Mahjong Set

题意:

初始有一个值域在 \([1,n]\) 的多重整数集 \(S\),且每个元素重复次数最多为 \(n\),定义 \(\operatorname{triple}(S)\) 表示 \(S\) 中相同无序三元组数量,\(\operatorname{straight}(S)\) 表示 \(S\) 中连续整数的无序三元组数量,告诉你初始 \(\operatorname{triple}(S)\) 和 \(\operatorname{straight}(S)\),每次你可以选择加入一个 \([1,n]\) 内的整数并会返回修改后的两项权值,要求在不超过 \(n\) 次操作后求出 \(S\)​。

\(4\leq n\leq 100\)。

题解:

solution.

code.

\(2024.4.2\) ABC306Ex Balance Scale

题意:

给一个大小为 \(n\)​ 的无向图,可以将一些点合并,求所有合并再将每条边定向后无环的方案数。

\(1\leq n\leq 17\),时限 \(3s\)。

题解:

先不考虑合并点,设 \(f_s\) 表示 \(s\) 的导出子图定向后无环的方案数。

考虑枚举一个其定向后无环的某个图的极大入度为 \(0\) 的点集 \(t\),即将所有 \((u,v)\) 满足 \(u\in t,v\in s\) 定向为 \(u\rightarrow v\),那我们首先要保证 \(t\) 为独立集。

其次我们发现难以去要求其是极大的,所以考虑再将其容斥,显而易见有独立集的子集仍为独立集,又由于 \((\forall s)\sum\limits_{t\subseteq s}[t\neq\emptyset](-1)^{|t|+1}=[s\neq\emptyset]\),因此容易有 \(f_s=\sum\limits_{t\subseteq s}[t\neq\emptyset][t\text{ 为独立集}](-1)^{|t|+1}f_{s-t}\)。

然后再考虑合并点操作,也就是把枚举到的 \(t\) 中连通块缩点即可。

预处理下每个子集中连通块数量再枚举子集计算即可,时间复杂度 \(O(3^n)\)​。

code.

\(2024.4.3\) 欧贝里斯克的巨神兵

题意:

给一个大小为 \(n\) 的有向图,求其生成无环子图数量。

\(1\leq n\leq 17\),时限 \(4s\)。

题解:

思路同上一题,容易推得转移方程 \(f_s=\sum\limits_{t\subseteq s}[t\neq\emptyset](-1)^{|t|+1}2^{\operatorname{edges}(t,s-t)}f_{s-t}\),其中 \(\operatorname{edges}(s,t)=|\{(u,v)|(u\in s)\land(v\in t)\}\cap E|\),可以在固定 \(s\) 的情况下从小往大从低位转移,时间复杂度 \(O(3^n)\)。

code

\(2024.4.3\) 「PKUSC2018」最大前缀和

题意:

求一个序列 \(a\) 任意排列的最大前缀和之和。

\(1\leq |a|\leq 20\)。

题解:

首先为了防止计重,当有多个前缀和同时为最大时,我们钦定选择最靠前的。

设 \(b\) 为 \(a\) 的某个排列,\(s\) 是 \(b\) 的前缀和。那 \(s_i\) 最大当且仅当 \((\forall x\in [2,i]\cap\mathbb{Z})(s_i-s_{x-1}>0)\land(\forall x\in(i,n]\cap\mathbb{Z})(s_x-s_i\leq0)\),即 \(b_{\{2,i\}}\) 后缀和全正,\(b_{\{i+1,n\}}\) 前缀和全非正。

因此维护 \(f_s\) 为点集为 \(s\) 且前缀和全非正的排列数,\(g_s\) 为点集为 \(s\) 且后缀和全正的排列数,\(f\) 枚举排列最后一位、\(g\) 枚举排列第一位,递推维护即可。最后枚举 \(b_1\) 再枚举 \(b_{\{2,i\}}\) 更新答案即可,时间复杂度 \(O(n2^n)\)。

code.

\(2024.4.4\) 「清华集训2014」主旋律

题意:

求一个有向图 \(G=(V,E)\) 的生成强连通子图数。

\(1\leq|V|\leq 15\)

题解

设 \(f_s\) 表示 \(s\) 的生成强连通子图数,答案即为 \(f_{V}\)。

强连通图等价于缩点后结点个数为 \(1\) 的图,容斥一下变成计数缩点后结点个数大于 \(1\) 的图。

类似前文 DAG 计数的思路,枚举缩点后入度为 \(0\) 的强连通分量集合再容斥,考虑到容斥系数的底数是 \(-1\),次数是强连通分量数加一,于是维护每个点集划分为奇偶数个的强连通分量,转移时将前者减去后者再乘上 \(2\) 以起点不在这个入度为 \(0\) 的强连通分量内的边数次幂即可(因为对剩下的点没有要求,相关的边乱选即可)。至于每个点集划分为奇偶数个的强连通分量方案数,就是钦定最后一次一定选含编号最小的点的强连通分量,胡乱转移即可。因要枚举子集,所以复杂度 \(O(3^n)\)。

code

标签:连通,2024.4,题意,记录,第一周,leq,枚举,operatorname
From: https://www.cnblogs.com/yamadaryou/p/18114077

相关文章

  • 全局统一返数据类型封装记录
    全局统一返回值封装​在SpringBoot中,实现全局统一返回值封装是一种常见的做法,它有助于保持API的一致性,并简化前端对响应数据的处理。创建一个响应体类,包含状态码、消息、数据等字段。这个类可以作为所有控制器返回值的通用格式。​下面通过三种类型的统一返回响应体来......
  • 备忘记录-20240404.构建服务的k8s资源清单
    导读记录一次搭建服务的成果框架graphTBC(Client)-->ig(ingress)ig-->np((nginx-php\nservice))ig-->tc((tomcat\nservice))np-->ng1(nginx)np-->ng2(nginx)ng2-..->ps((php\nservice))ng1-..->psps-->p1(PHP)ps-->p2(PHP)ps......
  • 将字符串转化为回文串,并记录方案
    #include<iostream>#include<stdio.h>#include<algorithm>#include<string>#include<cmath>#include<string.h>#defineR(x)x=read()#defineFor(i,j,n)for(inti=j;i<=n;++i)usingnamespacestd;inline......
  • 2023.4 做题记录
    2023.4做题记录[NOIP2018提高组]旅行看到题目中要求\(m=n\)或\(m=n-1\),此时就应当分类讨论。①当\(m=n-1\)时:此时数据为一颗树。我们贪心的想:起始点为\(1\)的时候显然最优。对于每一个节点,在它子树内按照从小到大的顺序遍历显然最优。复杂度\(O(n\logn)\),瓶颈......
  • #19 2024.4.3
    694.pjudge21633【PER#2】2048695.loj3483「USACO2021.2Platinum」CountingGraphs696.loj2468「2018集训队互测Day2」神秘货币史。697.cf1935fAndrey'sTree反思。考虑一个\(mx\rightarrowmx+1\)的构造。那么它挺赢的。考虑一些cornercase,即\(u=mx......
  • JavaWeb-01记录
    JWT令牌JSONWebToken作用:以json格式在各方之间安全传递信息,是数字签名的。格式:标头Header.有效载荷Payload.签名Signature前两部分用Base64编码,可以被前端翻译并理解。第三部分使用编码后的前两部分,加上一个密钥,用头部声明的加密算法进行签名,保证令牌没有被篡改。swagger生......
  • 2024.04 别急记录
    1.餐巾计划问题建图跑费用流即可:\((S,1,\inf,p)\);\(\foralli\in[1,N],(i,i+N,r_i,0)\);\(\foralli\in[1,N],(S,i+N,r_i,0)\);\(\foralli\in[1,N],(i,T,r_i,0)\);\(\foralli\in[1,N),(i,i+1,\inf,0)\);\(\foralli\in[1,N-n],(i+N,i+n,\inf,f)\);\......
  • 随堂练习2024.4.3
    建立规则,仪式,流程,模式:  定义代码编写和审查的标准,确保开发质量。  实施敏捷开发的仪式,如日常站会,迭代评审和回顾会议,以提高团队协作和项目透明度。 建立清晰的开发流程和里程碑,确保项目按时推进。给好行为正面的反馈:  对于按时完成任务且代码质量高的开发人员......
  • 吴恩达2022机器学习专项课程(一) 4.6 运行梯度下降&第一周课程实验:线性回归的梯度下降
    问题预览/关键词更新梯度下降对模型拟合,等高线图,3d空间图的变化。什么是批量梯度下降。实验目标计算梯度运行梯度下降梯度下降迭代次数和成本函数的关系可视化模型预测在等高线图上的梯度下降学习率过大报错问题笔记1.模型拟合,等高线图,3d空间图的变化3.5课节有一样的图,......
  • 【问题记录】CCES编译报错:“[Error li1030] Can not open input file ‘libadi_sigma
    一,问题现象编译工程时,报错提示:“[Errorli1030]Cannotopeninputfile‘libadi_sigma_sharc_awc.dlb’”,“[Errorli1030]Cannotopeninputfile‘libadi_sigma_sharc_nwc.dlb’”:二,问题原因&解决方法没有安装对应的插件,安装插件:SigmaStudioForSHARC-SH-Rel2.......