A

你考虑 可以把这个数组当中的每个数表示成另一种形式:\(a_i = k_i\times x+b\)(其中\(x\)是模数,\(b\)为余数)。

对于求两个数是否对于某个余数同余,显然你要判断他们两个的差,即\(a_i-a_j\),那么我们用上面那种形式表示其实就是\(a_i-a_j = (k_i-k_j) \times x\),所以你要判断整个数组的话只需要对每两个数的差求一个\(gcd\),如果这个\(gcd\)是\(1\),显然,他们所有数不能对一个数同余,故选择的模数直接用\(2\)就可以让模出来最少的余数种类---仅有\(2\)种,否则的话,就可以通过余某个数把他们变成同余的,故答案就是\(1\)。

Code

B

场切的第一个第二题哈哈哈哈,首先你考虑这个如果做数学的话没法推到出来一个大的综合式子(别问为什么,两个小时没做出来)。

我们考虑做\(dp\)计数,设定\(dp_{i,j}\)表示当前选到了第\(i\)个数,当前的和为\(j\)。

那么考虑转移,其实挺好整,你考虑如果这一个选\(1\),那么他能从\(dp_{i-1,j-1}\)转移过来。

如果选了\(j\)这个和,那么你考虑其实\(j/2\)的也能选到,因为你可以把这个序列当中的所有数都除以\(2\),所以也可以转移。

注意,建议你正着枚举,也就是:

\[dp_{i,j} = dp_{i-1,j-1}+dp_{i,j*2}
\]

那么这个时候,你对于\(j\)的枚举顺序应该是从大到小的,因为你在计算\(j\)的时候会找到\(j*2\)对吧,所以在第二维计算的时候,他是具有依赖性的哈哈哈。

记得判断\(j*2\)的范围一定是 \(\le i\)的。

D

考虑容斥把问题转化。

设定\(f_i\)表示至少钦定了\(i\)个数的出现次数不大于\(1\),\(g_i\)表示你恰好钦定了\(i\)个数的出现次数不大于\(1\)。

得到公式:

\[f_i = \sum_{i=0}^{n}C_{j}^{i} g_j
\]

反演得到:

\[g_i = \sum_{i=0}^{n}(-1)^{j-i}C_{j}^{i}f_j
\]

解释一下这里为什么有组合数奥,显然,一开始你钦定了\(i\)个数,对于你目前找到的这\(j\)个数,有\(C_{j}^{i}\)种选法。

但是,你\(f_i\)的表示还需要有一个\(C_{n}^{i}\),这是为什么呢?因为你在求这个\(f_i\)时一开始点的选择有\(C_{n}^{i}\)种选法,当你钦定了这\(i\)个数的时候,你还有\(C_{j}^{i}\)种可以移动的方法,这样可以理解吧。

那么你发现,答案其实就是\(g_0\),显然啊!

对于钦定的\(i\)个元素,可以分为两类:出现一次的和没有出现的。对于没有出现过的元素可以不考虑,对于只出现一次的元素,设其个数为\(j\),可以考虑将其划分为若干集合,然后再与未钦定的元素进行搭配。将相互区分的\(n\)个元素划分为\(k\)个不互相区分的非空集合方案数为\(\displaystyle {k \brace n}\),

CSP-S模拟赛20241004的更多相关文章

  1. CSP模拟赛游记

    时间:2019.10.5 考试时间:100分钟(连正式考试时间的一半还没有到)题目:由于某些原因不能公开. 由于第一次接触NOIinux系统所以连怎么建文件夹,调字体,如何编译都不知道,考试的前半小时 ...

  2. 洛谷 P5594 【XR-4】模拟赛

    洛谷 P5594 [XR-4]模拟赛 洛谷传送门 题目描述 X 校正在进行 CSP 前的校内集训. 一共有 nn 名 OIer 参与这次集训,教练为他们精心准备了 mm 套模拟赛题. 然而,每名 OI ...

  3. 「CSP-S模拟赛」2019第四场

    「CSP-S模拟赛」2019第四场 T1 「JOI 2014 Final」JOI 徽章 题目 考场思考(正解) T2 「JOI 2015 Final」分蛋糕 2 题目 考场思考(正解) T3 「CQO ...

  4. 「NOWCODER」CSP-S模拟赛第3场

    「NOWCODER」CSP模拟赛第3场 T1 货物收集 题目 考场思路即正解 T2 货物分组 题目 考场思路 题解 60pts 算法:一维 DP 100pts 算法:一维 DP ?线段树 + 单调栈 ...

  5. NOIP模拟赛20161022

    NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...

  6. NOI模拟赛 Day1

    [考完试不想说话系列] 他们都会做呢QAQ 我毛线也不会呢QAQ 悲伤ING 考试问题: 1.感觉不是很清醒,有点困╯﹏╰ 2.为啥总不按照计划来!!! 3.脑洞在哪里 4.把模拟赛当作真正的比赛,紧 ...

  7. NOIP第7场模拟赛题解

    NOIP模拟赛第7场题解: 题解见:http://www.cqoi.net:2012/JudgeOnline/problemset.php?page=13 题号为2221-2224. 1.car 边界 ...

  8. contesthunter暑假NOIP模拟赛第一场题解

    contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...

  9. NOIP模拟赛 by hzwer

    2015年10月04日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿2(mining) [题目背景] 小奇飞船的钻头开启了无限耐久+精准采集模式!这次它要将原矿运到泛光之源的矿 ...

  10. 小奇模拟赛9.13 by hzwer

    2015年9月13日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿(explo) [题目背景] 小奇要开采一些矿物,它驾驶着一台带有钻头(初始能力值w)的飞船,按既定路线依次飞 ...

随机推荐

  1. Java String 去掉特殊字符之前的内容方法

    为了去除字符串中某个特殊字符之前(包括该特殊字符本身)的所有内容,我们可以使用Java中的String类的substring和indexOf方法.这里,我将给出一个完整的代码示例,该示例会找到字符串中 ...

  2. Linux驱动小技巧 | 利用DRIVER_ATTR实现调用内核函数

    1. 前言 很多朋友在调试驱动的时候,都会遇到这样一个场景: 修改一个参数,然后调用某个内核中的函数. 比如将某个gpio的值拉高/拉低,修改某个寄存器的值等等. 如果每一个参数都通过字符设备的ioc ...

  3. .NETCORE 下使用 NLog

    NLog帮助类 1 public enum LogType 2 { 3 [Description("网站")] 4 Web, 5 [Description("数据库&qu ...

  4. 【2】Kaggle 医学影像数据读取

    赛题名称:RSNA 2024 Lumbar Spine Degenerative Classification 中文:腰椎退行性病变分类 kaggle官网赛题链接:https://www.kaggle ...

  5. ios滚动列表白屏问题

    移动端分页列表,在ios上滚动加载分页时候,使用scrollTop,会引起白屏问题. 看不少文章说是使用了-webkit-overflow-scrolling: touch;引起的硬件加速问题.亲测删 ...

  6. 【Python自动化】之利用JS操作页面滚动条(新)

    如何操作页面中的滚动条,有以下几个方法: 一.查找可见元素进行滚动页面(通用) 方法一: ①移动到元素element对象的"顶端",与当前窗口的"顶部"对齐(默 ...

  7. LLM论文研读: MindSearch

    1. 背景 近日中科大与上海人工智能实验室联合推出的MindSearch思索,引起了不小的关注,github上的星标,短短几周时间,已经飙到了4.2K.看来确实有些内容,因此本qiang~研读了论文及 ...

  8. IDEA 忽然无法打开某个特定文件

    背景:IDEA中双击打开一个.py文件时,弹出一个文件类型的弹窗(没注意是什么,估计是不小心按到了什么快捷键),当时随便选的Text,结果不知道为什么,这个文件无法在IDEA中打开(之前都正常) 由于 ...

  9. cesium的使用

    安装 建议使用vue的cesium插件:vue-cli-plugin-cesium.vue add命令可零配置添加cesium:vue add vue-cli-plugin-cesium 报错 添加完 ...

  10. 利用CSS 实现环形百分比进度展示

    先看效果图: UI设计了这样的效果,已读人数占总人数的百分比,环形展示. 这里可以用echarts图表,也可以用css实现,因为我是在小程序环境下,考虑到包大小体积,采用了css实现. 核心就是一行代 ...