复盘

T1 很水,一道异或求和,但是某两位仁兄因没打括号而死。

T2 很水,一道字符串处理,但是我和某位仁兄因没特判而死(虽然没有 hack 掉我,所以我理论上还是满分)。

T3 不水,看了很久,没想出来,自闭了就去看了 T4。

发现也做不出来。

此时我出去晃了一圈,大概是不知道从哪里看到了一个“二”字,顿悟。

跑回教室打了一个二分套 dp,过了大样例就磕 T4。

时间剩的不多了,就打了一个 \(n^2\) 的 \(40\) 分暴力就交了。

  • 预估:\(100 + 100 + 100 + 40 = 340\),非常爽!
  • 实际:\(100 + 100 + 90 + 40 = 330\),还是非常爽!

优点

  • 只挂了 \(10\) 分。
  • T2 被 hack 了但是没挂分。

缺点

  • 居然挂了 \(10\) 分?!
  • T2 居然被 hack 了?!

题解

T1 异或

题意

一个长为 \(n\) 的数列,将其中一个数异或 \(k\),求更改后的最大和。

题解

按题意模拟即可。

不过位运算要打括号哦~

T2 数字转换

题意

对于一个数 \(n\),可以将每一位增加 \(1\) (无限次)或任意一位加 \(1\) (一次)

题解

模拟

T3 最优除法

题意

将一个数除以 \(i\) 的代价为 \(a_i\),求 \(x\) 变到小于 \(y\) 的最小代价。

题解

(思路来自 banned_xiejiayun,加上我的一些改编,侵删)

假设:

\[b_8 = 10^9
\]
\[b_4 = 10
\]
\[b_2 = 10
\]

但是我们想要由 \(32\) 到 \(4\),此时不能直接除以 \(8\),可以除以两个 \(4\),用 \(20\) 来代替 \(10^9\) 的高昂代价。

故:

\[b_{x \times y} = \min\{b_{x \times y}, b_x + b_y\}
\]

但是因为我们可以用除以更大的数来代替小数(如果大数的代价小于小数):

\[b_{x - 1} = \min\{b_{x - 1}, b_x\}
\]

T4 字符串

题意

求一个字符串的子串个数,满足所有出现的字符至少有一个出现次数为 \(1\)。

题解

我们记 \(f_{i, j}\) 为 \(i\) 及之前第一个为 \(j\) 的位置。

先枚举 \(i\),接着我们需要计算右端点为 \(i\) 的区间个数。

对于任意一个字符 \(j\),左端点在 \(\left[f_{i, j} + 1, i - 1\right]\) 范围内的子串一定是不包含任何 \(j\) 字符的。

同理 \(\left[f_{f_{i, j} - 1, j} + 1, f_{i, j}\right]\) 一定只包含一个 \(j\) 字符(因为 \(f_{i, j}\) 的定义包含 \(i\),所以要减一)。

但是直接计算和可能会算重复。

所以排序贪心即可。

10.3 - AM - 模拟赛 总结的更多相关文章

  1. 10.17 NOIP模拟赛

    目录 2018.10.17 NOIP模拟赛 A 咒语curse B 神光light(二分 DP) C 迷宫maze(次短路) 考试代码 B 2018.10.17 NOIP模拟赛 时间:1h15min( ...

  2. 10.16 NOIP模拟赛

    目录 2018.10.16 NOIP模拟赛 A 购物shop B 期望exp(DP 期望 按位计算) C 魔法迷宫maze(状压 暴力) 考试代码 C 2018.10.16 NOIP模拟赛 时间:2h ...

  3. 10.30 NFLS-NOIP模拟赛 解题报告

    总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没 ...

  4. 2018.10.16 NOIP模拟赛解题报告

    心路历程 预计得分:\(100 + 100 + 20 = 220\) 实际得分:\(100 + 100 + 30 = 230\) 辣鸡模拟赛.. T1T2都是一眼题,T3考验卡常数还只有一档暴力分. ...

  5. 2016.10.30 NOIP模拟赛 day2 PM 整理

    满分:300分 直接全部爆零,真的是很坑啊! 10.30的题目+数据:链接:http://pan.baidu.com/s/1jHXLace 密码:i784 T1: 题目中的难点就是每次折叠的点可能应经 ...

  6. 2016.10.30 NOIP模拟赛 day2 AM 整理

    题目+数据:链接:http://pan.baidu.com/s/1gfBg4h1 密码:ho7o 总共得了:130分, 1:100分  2:30分(只会这30分的暴力) 3:0(毫无思路) 虽然不高, ...

  7. 2017 10.25 NOIP模拟赛

    期望得分:100+40+100=240 实际得分:50+40+20=110 T1 start取了min没有用,w(゚Д゚)w    O(≧口≦)O T3 代码3个bug :数组开小了,一个细节没注意, ...

  8. 2018.10.29 NOIP2018模拟赛 解题报告

    得分: \(70+60+0=130\)(\(T3\)来不及打了,结果爆\(0\)) \(T1\):简单的求和(点此看题面) 原题: [HDU4473]Exam 这道题其实就是上面那题的弱化版,只不过把 ...

  9. 2018.10.03 NOIP+ 模拟赛 解题报告

    得分: \(30+5+0=35\)(考得真不咋滴) \(T1\):奥义商店(点此看题面) 以为很简单,对着这题想了一个多小时,最后果断打了个暴力交了... ... 看完题解发现其实也不是很难. 对于\ ...

  10. 2018.10.26 NOIP2018模拟赛 解题报告

    得分: \(0+10+10=20\)(\(T1\)死于假题面,\(T3\)死于细节... ...) \(P.S.\)由于原题是图片,所以我没有上传题目描述,只有数据. \(T1\):颜料大乱斗(点此看 ...

随机推荐

  1. C++ 加权随机抽样

    ​ 在做五子棋 AI 的时候,遇到要根据权重从一组数里边随机选出一个这个问题.这个问题恰好也是 leetcode 第 528 道题,使用 C++,标准库就有现成的: #include <rand ...

  2. 如何用 Spring AI + Ollama 构建生成式 AI 应用

    为了构建生成式AI应用,需要完成两个部分: AI大模型服务:有两种方式实现,可以使用大厂的API,也可以自己部署,本文将采用ollama来构建 应用构建:调用AI大模型的能力实现业务逻辑,本文将采用S ...

  3. 关于CP2102(USB转TTL模块)的驱动安装、电脑识别、接线

    一.CP2102 与 CH340 对比 特性 CP2102 CH340 芯片制造商 Silicon Labs WCH(江苏沁恒) 接口 USB USB 最大波特率 1 Mbps 2 Mbps 支持操作 ...

  4. Codeforces Round 642 (Div3)

    K-periodic Garland 给定一个长度位\(n\)的\(01\)串,每次操作可以将\(1\)变为\(0\)或者将\(0\)变为\(1\),现在你需要通过操作使得所有\(1\)之间的距离为\ ...

  5. 使用redis 的订阅服务

    1.业务使用场景 我们在使用表单动态添加字段,如果新增字段,再保存数据,这个时候就会出错,出错的原因是seata 再本地缓存元数据,修改物理表的时候,这个元数据并没有发生变化,因此需要刷新元数据,因为 ...

  6. seldom-platform:颠覆传统的自动化测试平台

    seldom-platform:颠覆传统的自动化测试平台 seldom-platform是一个自动化测试平台,其特点是让会写代码的测试人员能够通过seldom框架高效地完成自动化用例的编写,并将剩下的 ...

  7. 关于tomcat在idea上的中文编码问题

    一.问题引入 在国内,无论是新手还是有一定码龄的开发人员,汉字编码问题一直都是绕不开的魔咒,本文主要对tomcat在jetbrain系列产品idea上的乱码问题提供解决经验. 二.详情描述 新手在初学 ...

  8. Acrobat Pro DC 2024.005 像word一样编辑PDF

    随着数字化的推广,PDF文件凭借其强大的优势和稳定性逐渐成为各类文档交流和存储的首选格式.随之而来的是对PDF文件的阅读.编辑.转换.转曲等各种操作需求的不断增长.因此,一款强大的PDF处理软件不仅需 ...

  9. 2024-12-18:正方形中的最多点数。用go语言,给定一个二维数组 points 和一个字符串 s,其中 points[i] 表示第 i 个点的坐标,s[i] 表示第 i 个点的标签。 如果一个正

    2024-12-18:正方形中的最多点数.用go语言,给定一个二维数组 points 和一个字符串 s,其中 points[i] 表示第 i 个点的坐标,s[i] 表示第 i 个点的标签. 如果一个正 ...

  10. mysql 创建字段createtime 自动添加时间

    1. 创建createtime字段 类型选为timestamp 2.  添加默认值 CURRENT_TIMESTAMP