尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

10.17 CSP-S模拟33 改题记录

10.17 CSP-S模拟33 改题记录
📅 发布时间:2026/6/19 15:58:16
10.17

HZOJ

写在前面

貌似没啥可写。。。大概就是二十多分钟写完T1然后写T2,一直想假一直写挂然后写了三个多小时,好在写出来了。T3看不上,T4正解需要的东西都写了然后喜提0pts,甚至不如输出0的37pts。

《夜信》

今晚会把那天的萤火
送到你的窗边
嗯 是我爱你这句话
我们的初吻在我脑海里浮现
那么 无论何时 闭上眼睛
嗯 到遥远的地方去
宛如波浪停留过的
沙滩上所写的字
你好像已渐渐远去 消失不见
总让我想念又想念
虽然我无法在此
诉说我内心深处的话语
是我爱你这句话啊
名为你的幸运
会怎样来到我身边呢
现在如果我们能在一起的话
啊 该多么美好
宛如波浪停留过的
沙滩上所写的字
你好像已渐渐远去 消失不见
想念 又更想念了
虽然无法在我的日记里
诉说我内心深处的话语
我爱你这句话
今夜会把那天的萤火
呈现在你的窗边
嗯 愿会是个好梦

A. Divisors

签到题。本来以为还要容斥啥的,但是范围直接模拟就能过,然后就过了。

B. Market

罪魁祸首。题意是给定若干个商店及其开店的时间和卖的东西的价值和费用,给定若干个询问,对于每个询问给出开始购物的时间和有的钱,每个商店只能买一个东西,求问最多能买到多少价值的东西。

数据范围粗看是简单的背包dp(实际上也是)。然后大概就是觉得不可能考这么简单的东西,然后往最小费用最大流上面想了。还好及时反应过来开始写背包。然后就发现如果以价值为第二维那答案没有连续性,没法二分出答案;以花费为第二维空间又开不下,时间也不允许那样转移。然后就手搓主席树,发现小点能过大点WA。开大空间反而RE。然后意识到树上也开不下这么多点,而且其慢无比。然后就苦想inf秒。然后突然意识到可以把价值上树,还不用动态开点,遂A之。此时据结束还有5min。

C. 连通性

不要容斥呜呜呜。题意是有一份错误的floyd代码判图的连通性,求问对于给定的\(n\),只有\(n-m\) 个点可以进行中转时该求出的连通性仍然完全正确的连接方式数。

转化题意。将点分为两类,一类为前\(n-m\) 个点,二类为其余点。对于前\(n-m\) 个点,其内部转移不受影响。二类点以一类点可以向二类点或一类点转移,但是一类点无法通过二类点向其他点转移。这启示我们一个连同块内每个二类点必定会和一个一类点相连,且没有任何一个二类点能作为割点。

考虑只有一类点的情况,那答案直接就是\(n\) 个点无向图的数量。只有二类点,那么同一连通块内的每一个点对都有直接的边相连。

那对于一张普通的图,我们就可以把其分为只有一类点,只有二类点和既有一类点又有二类点的连通子图。

对于既有一类点又有二类点的连通块,根据上面的分析,二类点至少和一个一类点相连且不能是割点。

我们首先可以容斥求出\(i\) 个点无向连通图的数量\(g_i\),用简单无向图的数量减去不连通的数量,不连通的个数可以通过枚举任意一个点所在连通块的大小取得:

\[g_n=h_n-\sum_{i=1}^{n-1}g_i\times 2^{\frac{i(i-1)}{2}} \times \binom{n-1}{m-1} \]

考虑求出答案\(f_{n,m}\)。由于连通块是无序的,为了方便转移,我们强制编号为\(n\) 的点在最后一个连通块。

我们先考虑全是二类点的情况:

\[f_{n,m}=\sum_{i=1}^{m} f_{n-i,m-i} \times \binom{m-1}{i-1} \]

即枚举符合条件的子图,再加上若干个二类点连通块的方案数。

然后就可以在连通块内加上一类点了:

\[f_{n,m}=\sum_{i=1}^m \sum{j=1}^{n-m} f_{n-i-j,m-i} \times \binom{m-1}{i-1} \times {n-m}{j} \times (2^j-1)^i \times h_i \times g_j \]

即枚举符合条件的子图再分别枚举添加的一二类点数求得方案数。

然后就是\(O(n^4)\) 预处理\(O(1)\) 查询。

代码实现就是把式子直接贺上去。

D. 树

题意是给定一棵树。给定若干点对。确定所有树边的方向,使得能满足所有点对能从一方到另一方。求满足限制条件的树边方向组合数。

其实赛时把该写的结构都写得差不多了,至于没写出来,是我太唐了。首先可以知道,如果一条边不被任何一条路径经过,那么它两个朝向都可以选。由于限制条件,某些边就只能选择同一个方向。不会二分图怎么办?考虑将所有路径拍到点上,那么就将所有点拆成两个,一个代表向上的边,一个代表向下的边。然后遍历所有边时在同一个方向上的边用并查集合并,然后转折点出就反方向的边相连。这样最后出现在同一个并查集内的边的就都要选/不选。所以如果最后某一个节点拆出的两个点在同一个集合内,则说明如果要满足条件就必须既要有向上的边又要有向下的边,显然这样不满足题目要求,可以判无解。那么显然每个并查集可以对答案产生2的贡献(向上向下二选一)。所以答案就是\(2^{并查集个数/2}\)。(一条边没有被经过,所以其不会被合并,所以可以算作一个独立的集合)(除以2是因为一正一反会算重)。

然后就考虑如何维护。暴力跳肯定不行。那考虑树链剖分,然后上线段树维护集合情况。理论复杂度\(O(nlog^2n)\),虽然本地跑大样例会T,但是交上去能过,虽然是最劣解而且比倒数第二慢了两倍。

然后要注意各种空间开的倍数,还有不同位置使用的变量下标/含义应该相同,不能混用,否则就狂RE不止。

相关新闻

  • 包装类(基本数据类型对应的引用数据类型)
  • 系统稳定性监控
  • 详细介绍:k8s部署前后分离架构微服务——跨域和缓存问题

最新新闻

  • 东坑镇Shopee店铺优化:提升店铺转化率的10个技巧 - 东莞选校指南
  • 济南奢侈品手表回收哪家靠谱?5家主流奢品回收机构实测对比 - 奢品小当家
  • 闲置黄金别落灰,哈尔滨黄金回收一键预约快速回血,就在合扬 - 奢侈品交易观察员
  • 有据可查!南宁黄金回收公信力榜单出炉,变现直接对照选店 - 沉迷学习28
  • 离婚财产分割律所:5家精通复杂资产分割的团队评测 - 品牌2026
  • 如何用OandBackup打造你的安卓数据安全堡垒?终极备份解决方案深度解析

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号