首页 > 其他分享 >NOI2022 模拟赛合集【kel.ac.cn】

NOI2022 模拟赛合集【kel.ac.cn】

时间:2023-05-08 13:44:05浏览次数:36  
标签:sz ac kel cn 于是 复杂度 sum 100 考虑

Round XLIX

开场看B想了3h假回去想A1h切。

A. 守序划分问题

容易想到一个必要条件,对于任意集合 \(S\),需要满足 \(\max_{i\in S}A_i>\min_{i\notin S}A_i\)。然后用你的大脑构造一下发现这东西也充分。

于是思考如何计数,即不能将数列割裂成两个部分。于是考虑动态规划。设 \(f[i,j]\) 代表将 i 个数划分成 j 段的方案数。考虑容斥,有 \(f[i,j]=s[i,j]-\sum_{k=1}^{i-1}\sum_{l=1}^{j-1}f[k,l]s[i-k][j-l]\)。其中 \(s\) 是第二类斯特林数。这玩意像个卷积但是是二维的所以我们不妨固定一维,然后另一维ntt。可这样复杂度是 \(O(n^3\log n)\) 的,过不去。我们发现直接按找点值做最后再插值回去也可以,所以复杂度优化到了 \(O(n^3)\)。

B. 心理阴影

考虑如何合并两个子树的拓扑序的期望。如果记为 \(f[u,v]\),那么答案即为 \(\sum_{u,v are bro}f[u,v]\) 加上祖先之间的贡献。如何对这个dp?考虑有 \(\frac{sz_u}{sz_u+sz_v}\) 的概率走到 \(u\),于是直接从子树转移即可。

C. 点整的上圆

神秘题,记一个原题的结论:

所有模 4 余 1 的质因子的指数乘2加1的积。

Round L

B看错题瞎想了1h。最后暴力也没打完。

实际得分 100+0+20 期望得分 100+100+40 预估考场得分 100+25+40

A. 哈希计数

这题的数据范围很吓人。仔细想一想发现要求的那个值是 \(O(n^3)\) 的,所以看起来很可以多项式复杂度解决问题。于是考虑dp,记 \(f[i,j]\) 代表 \(i\) 个点的树和能否是 \(j\)。可是这样设的话不太好转移,需要记录每个点的根的距离和。我们换一种角度思考,对于每条边,他的贡献是 \(sz[x]*(n-sz[x])\)。于是考虑加入每条边的时候把贡献提前计算。于是就可以转移了。直接做的复杂度是 \(O(n^8)\),可以bitset优化,36的数据只用跑 0.2s。

B. 运输计划

大分类讨论题,考虑枚举建在哪里,然后分类讨论。

C. 时代的眼泪

很套路的分块题(考场上自动认为这题不可做就每仔细想,其实想一想说不定可以想出来)。

标签:sz,ac,kel,cn,于是,复杂度,sum,100,考虑
From: https://www.cnblogs.com/zcr-blog/p/17381484.html

相关文章

  • nacos配置自动刷新(不重启应用)
    (一)背景我们平常的开发中经常会遇到需要修改配置的情况,但是又不希望重启应用。以nacos为例子,哪些情况修改完配置不重启应用就可以自动生效呢?下面开始做个简单的测试(二)测试@value注解 @Value("${testa.name}")privateStringname; 经测试,每次在nacos修改完不重启应用是......
  • 缺少Jackson jar包,导致对象无法转化为json数据输出
       用于Json的序列化(serialization)和反序列化(deserialization)。Jackson包含三个包jackson-core、jackson-annotation、jackson-databind,作用如下  <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</a......
  • Mac M1 安装python3.6.x
    在macM1上通过pyvenv直接安装python3.6.x会失败。后来发现其实python官方直接提供了m1的pkg包,就不需要再重新编译安装了。进入python官方为macos提供的各版本下载页面,在其中找到python3.6.x的可用版本,直接下载安装即可:https://www.python.org/downloads/macos/下载完毕直......
  • Oracle 报错:ORA-01438: 值大于为此列指定的允许精度
    今天在插入oracle数据库时,提示“ORA-01438:值大于为此列允许的精度“错误,经网上查找资料后解决了此错误错误说明ORA-01438,发生此错误的原因在于我们插入的数据长度超过了字段指定的字段长度,比如插入的数据为102329204123.33829492,小数点前长度为12,小数点后长度为8,若字段字符类型......
  • 在cmd中运行javac编译java文件报错: 编码GBK的不可映射字符、 非法字符: \65279
    操作背景:我在eclipse建立了个HelloWorld.java文件,格式UTF-8,然后复制保存到C:\Users\alex\test目录下,在此处运行按住Shift+右键调出cmd命令窗口,输入命令:javac HelloWorld.java,然后报错:HelloWorld.java:6:错误:编码GBK的不可映射字符解决办法:方法一:带上编码utf-8,运行命令:javac-e......
  • ETL--Extract-Transform-Load
    ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标......
  • mac 电脑上安装多个版本的 node
    前言开发旧项目时,使用低版本Nodejs。开发新项目时,需使用高版本Node.js。可使用n同时安装多个版本Node.js,并切换到指定版本Node.js。1、全局安装npminstall-gn2、安装指定node版本#比如我的电脑上安装了一个14.17.0的和一个16.17.0的sudo-En16.17.03、查看......
  • Java 三方接口PHP写法;doHmacSHA2; 将字节数组转换成16进制字符串;Mac.getInstance;Hma
    先看一段Java代码,一个签名过程1packagecom.sixents.bss.filter;234importorg.apache.http.HttpEntity;5importorg.apache.http.NameValuePair;6importorg.apache.http.client.entity.UrlEncodedFormEntity;7importorg.apache.http.client.met......
  • 解决mysql出现docker出现access denied for user root@% to database“xxx”的问题
    使用navicat连接Linux上的数据库时,新建一个库出现异常无法创建accessdeniedforuserroot@%todatabase返回Linux查看mysql状态状态正常,navicat也能正常连接,排除掉应该是权限的问题dockerexec-itd7bcc087dce1bash进入mysql容器 mysql-uroot-p登录账......
  • AcWing 770. 单词替换
    AcWing770.单词替换1.地址https://www.acwing.com/problem/content/772/2.题解#include<iostream>#include<cstdio>#include<sstream>usingnamespacestd;intmain(){strings;stringa,b;stringresult="";......