上一页 1 2 3 4 5 6 ··· 12 下一页
摘要: 思路 实际上,如果你会简单版本,那么困难版本也没有那么难了。 同样考虑构造一种通解,如下, 红色的格子改为 X,绿色的格子改为 O,就是一种通解,同样的,这样改可能会超过棋子总数的 \(\frac 1 3\)。 同样考虑将棋子按照位置分类,假如该棋子的位置是 \((i,j)\),那么按照 \((i+ 阅读全文
posted @ 2023-11-13 14:31 One_JuRuo 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 思路 如果去考虑 O 的摆放,再考虑那些改为 X,这样不好思考,实现也很不好写,所以我们可以考虑构造一种通解。 如果将上图所有标红的位置都放上 X,那么无论 O 如何放,都不可能胜利,而 X 因为原本就没有,所以摆上后也不可能胜利。 不过,因为更改的次数不能超过棋子总数的 \(\frac 1 3\) 阅读全文
posted @ 2023-11-13 14:29 One_JuRuo 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 前言 其实很早就看到过了,下定决心去学的,居然是因为翻到之前口胡的题目,然后发现之前做法假了,继续尝试做的时候发现需要这个算法,于是,题目就绿->黑了。 Step.1 引入 求一个数的所有因数,这个问题伴随了我们很久了,现在又要翻出来鞭尸。 最开始的时候,我们使用的是最朴素的 \(O(n)\) 试除 阅读全文
posted @ 2023-11-11 20:08 One_JuRuo 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 前言 本博客只会讲本蒟蒻目前学习到的地方,所以如果有没讲到的地方还请见谅,等蒟蒻有时间学了再说。 虽然本博客都是一些较为浅显的知识,但是写一道验证较为简单的 SPJ 题还是足够的。 另外,本文的 SPJ 都以 C++ 为例。 Step.1 SPJ 基础 Special Judge(简称:spj,别名 阅读全文
posted @ 2023-11-10 09:50 One_JuRuo 阅读(471) 评论(0) 推荐(2) 编辑
摘要: 思路 首先,对于 \(a_i\) 他必须得不小于最后的 \(a_{i-1}\),所以每个数乘的次数都是固定的。 如果暴力去乘 \(2\) 直到不小于为止,将会超时,所以考虑使用其他的方法进行优化。 因为前后两个数可以同时乘以 \(2\),相对比值不会变化,所以我们可以考虑对于最开始的 \(a_{i- 阅读全文
posted @ 2023-10-27 22:59 One_JuRuo 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 思路 如果每一次加或者删一个区间,再去暴力找有没有互不相交的区间的话,铁定 TLE。 那么,我们考虑维护有多少对互不相交的区间,那么每次加或者删一个区间,就去算这个区间对答案的贡献,然后再看答案是否为 \(0\) 即可快速判断有没有互不相交的区间。 现在考虑如何计算一个新加入或者删去的区间能让互不相 阅读全文
posted @ 2023-10-27 10:42 One_JuRuo 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 前言 其实这是某大佬的 PPT 里的一个问题,觉得很有意思,就花了一些时间想了想。 问题 总所周知,组合数的数论定义式是 \(\frac {(n-m+1)\times (n-m+2)\times \cdots \times n} {1\times 2\times 3\times \cdots \ti 阅读全文
posted @ 2023-10-26 19:40 One_JuRuo 阅读(435) 评论(1) 推荐(1) 编辑
摘要: 思路 大体上的思路应该和简单版本一致,建议先看本人关于简单版本的题解。 与简单版本不同的是,困难版本的 \(m\) 可以不为 \(1\),而是取遍 \([1,m]\) 中的整数,所以答案的总值会变大很多倍。 如果直接枚举 \(m\) 次,时间复杂度将会达到 \(O(mn\log n)\) 显然过不了 阅读全文
posted @ 2023-10-23 14:06 One_JuRuo 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 思路 考虑从大到小给每一个 \(b_i\) 匹配一个 \(a_j\),那么如果对于 \(b_i\),\(a_j\) 不能匹配,那么对于后续更小的 \(b_i\),\(a_j\) 同样无法匹配,所以可以直接忽略,跳到下一个,一直匹配,直到无法匹配为止,那么无法匹配的 \(b_i\) 的数量就是需要的操 阅读全文
posted @ 2023-10-23 14:05 One_JuRuo 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 思路 最开始都错题了,以为是不能通过另一种子串的选择方法得到这个子串就算做独特字串,实际上,是需要不能通过选择子序列的方式得到这个子串才满足条件,导致赛时没做出来(悲)。 实际上,如果一个子串满足条件,那么一个必要条件就是子串左侧没有与该子串左端一样的数字并且子串右侧也没有与该子串右端一样的数字。 阅读全文
posted @ 2023-10-23 14:05 One_JuRuo 阅读(25) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 12 下一页