信息技术
文章平均质量分 53
狼队.Modest
腾讯工程师
展开
-
P2311 loidc,想想看
对于询问[L,R],求出最大的x,满足2^x原创 2022-09-18 08:18:52 · 389 阅读 · 1 评论 -
P1045 [NOIP2003 普及组] 麦森数 题解
与 有着相同的位数,因为2的次方满足了最后一位不为零的要求,所以减一后位数并不会改变,那么我们可以直接求 的位数。我们不妨设 ,根据 的位数为 ,我们只要想办法把 中的底数2改为10,指数加一就是位数了。根据乘方的原理,将p乘进去,原式便可化为我们最终想要的形式 了,所以位数就是。这个绝对难不倒大家,裸的高精快速幂,经过NOIP2017初赛的RP++后,相信很多人都已经会了快速幂了,所以我在这里不再赘述,只是提供一种相对较为简便的高精乘法(见程序)二、求最后500位数。原创 2022-09-16 19:54:01 · 277 阅读 · 0 评论 -
P1049 [NOIP2001 普及组] 装箱问题
在我们学习动态规划之前,拿到这道题,大部分人首先的思路是贪心,即每次选择体积最大的装入箱中。原创 2022-09-16 19:49:33 · 365 阅读 · 0 评论 -
P5661 [CSP-J2019] 公交换乘
用算法分析历年CSP考题原创 2022-09-16 19:46:06 · 520 阅读 · 0 评论 -
P1422 小玉家的电费 题解
题解原创 2022-06-28 10:31:45 · 225 阅读 · 0 评论 -
P2837 [USACO08FEB]Dining Cows B 题解
怎么感觉没几个题解是写DP的呢?难道这真的是道假DP?如果用DP其实很好想啊,用dp[i][0]表示第i头奶牛为1时需改的最小数量,dp[i][1]表示第i头奶牛为2时需改的最小数量,如果第i头奶牛原来为1,则dp[i][0]=dp[i-1][0],dp[i][1]=min(dp[i-1][1],dp[i-1][0])+1,然后原来为2的情况以此类推啦~最后只要比较dp[n][0]和dp[n][1]就行了。#include <iostream>#include <cst原创 2022-01-14 15:25:45 · 1438 阅读 · 0 评论 -
P4708 画画 题解
去年差不多这个时间弄出的题,感觉这道题还是比较有灵性的。自己写个题解。先考虑一个辅助问题: n 个点的无标号图的个数 ans 。网上资料很多。直接套用 Burnside 引理,枚举点的置换(一种点的置换对应 ans * n! 种带标号方案的置换,这才是实际枚举的东西),可以将点划分为若干个循环节,考虑每个循环节内的点可以怎样连边,以及两个循环节间的点可以怎样连边。发现循环节大小的多重集合相同时,累加量一定,所以只需要枚举分拆方案,再乘上这个分拆方案对应的置换个数。现在回到这个问题。同样的,我们枚举循原创 2021-10-10 12:40:48 · 121 阅读 · 0 评论 -
P1063 [NOIP2006 提高组] 能量项链 题解
简单的说:给你一项链,项链上有n颗珠子。相邻的两颗珠子可以合并(两个合并成一个)。合并的同时会放出一定的能量。不同的珠子的合并所释放的能量是不同的。问:按照怎样的次序合并才能使释放的能量最多?我们用top表示第i颗珠子的头标记,用wei表示第i颗珠子的尾标记,合并两颗相邻珠子所释放的能量是:Q=top*wei*wei[i+1Q=top∗wei∗wei[i+1]或top*top[i+1]*wei[i+1]top∗top[i+1]∗wei[i+1];(一个样的)合并不一定按顺序的,本题所提供的.原创 2021-09-30 20:53:58 · 435 阅读 · 0 评论 -
【水】【违规不自杀】警惕新型校园欺凌
请注意!新型校园欺凌包括但不限于以下几个表现:1.在初中学校中,于黑板写下微积分相关知识2.给同学拿初中数论题跟同学说是因式分解题(注:初中数论题指学而思北京总部数学初中集训队的数论题目)3.尝试给同学推销膜你抄和OIdiary等歌曲4.尝试向同学讲述OI相对高级的算法,例如网络流和splay等5.给同学讲题的时候以“显然”“易证”“不难看出”等贯穿全文6.尝试使用导数等知识做初中题目7.尝试在动点压轴建立平面直角坐标系或用向量表示线段8.尝试给初中同学讲述万有引力圆周运原创 2021-09-23 21:28:19 · 117 阅读 · 0 评论 -
P1028 [NOIP2001 普及组] 数的计算 题解
好吧,这道题有两种解法第一种估计是大家一下子就想到的:暴力递归!!(很明显不是正解)粘一个我的代码#include<cstdio>using namespace std;int n,cnt=1;void func(int x){ for(int i=1;i<=x/2;i++){ cnt++; func(i); }}int main(){ scanf("%d",&n); func(n);原创 2021-09-23 21:22:32 · 196 阅读 · 0 评论 -
P1035 [NOIP2002 普及组] 级数求和 题解
在算模拟做法(做法1)的时间复杂度时,我想到了一种新的数论做法(做法2),检查了一遍题解发现没有这种做法,于是我写了这篇题解。1.模拟这种做法的思路是枚举nn从1开始,直到Sn>kSn>k结束,只需要一个循环即可实现。代码:#include<cstdio>int main() { int k,n=0; scanf("%d",&k); for(double Sn=0;Sn<=k;++n,Sn+=1.0/n); print原创 2021-09-18 12:03:08 · 662 阅读 · 0 评论 -
P1028 [NOIP2001 普及组] 数的计算 题解
以前一直很肤浅的认为这道题就是纯靠模拟就解决了。如今学了DP了,细细思考,原来是可以用递推来解决的。思路:递推到i个数的解,就是枚举第i个数的二分之一到0初始化呢, 就是f[0]=0;这道题可以归于 用DP求方案数类型。#include<iostream>#include<cstdlib>#include<cstdio>using namespace std;const int maxn=1000+2;int n;int f[ma原创 2021-09-18 11:59:18 · 100 阅读 · 0 评论 -
洛谷日报 第 361 期 2021 年 9 月 14 日
ssh浅谈作者:ApocalypseTq部分文章同步发表于:微信公众号 新浪微博 今日头条 百家号 搜狐号 网易号 大鱼号部分代码过多、内容过于深奥的文章,不适合发布于其他自媒体平台。管理员有可能不另行告知,只发布于洛谷主站。对文章的评论请在博客页面中评论,本帖中的文章会持续更新。链接失效反馈贴:【洛谷日报】链接失效统一反馈贴 - 洛谷2021 年洛谷日报索引:2021 年洛谷日报索引 - 洛谷2020 年洛谷日报索引:2020 年洛谷日报索引 - 洛谷2019 年洛原创 2021-09-17 12:08:01 · 212 阅读 · 0 评论 -
关于AC自动机的想法....
AC自动机关键点一:字典树的构建过程:字典树的构建过程是这样的,当要插入许多单词的时候,我们要从前往后遍历整个字符串,当我们发现当前要插入的字符其节点再先前已经建成,我们直接去考虑下一个字符即可,当我们发现当前要插入的字符没有再其前一个字符所形成的树下没有自己的节点,我们就要创建一个新节点来表示这个字符,接下往下遍历其他的字符。然后重复上述操作。假设我们有下面的单词,she , he ,say, her, shr ,我们要构建一棵字典树...原创 2021-09-07 12:13:45 · 70 阅读 · 0 评论 -
关于gcd
并行和并发 GCD简介 GCD的任务 GCD的队列 GCD创建队列或获取队列的方法 任务的执行方式:同步执行(同步)和异步执行(异步) GCD提交执行任务的具体方法 1.异步执行一个并发队列 2.异步执行一个串行队列(非主队列) 3.同步执行串行队列(非主队列) 4.同步执行并发队列 5.异步执行主队列(在主线程中) 6.同步执行主队列(在主线程中)本文参考文章链接:巧谈GCD iOS多线程详解 iOS多线程——你要知道的GCD都在这里(这篇存在着一些错误,慎读)前言原创 2021-08-30 15:28:02 · 199 阅读 · 0 评论 -
P1002 [NOIP2002 普及组] 过河卒 题解
一道比较入门的 dp 题这道题初始位置是从 0 开始的,这样不是很利于我们解题,所以不如暂且把这题里涉及的坐标统统 +1,那么初始位置就从(0,0)(0,0)变成了(1,1)(1,1)先考虑如果没有任何马的限制,卒子可以随便向右向下走,那么可以想到,一个卒子只能从 当前格子的左侧格子 和 当前格子的上方格子 上走到当前格子。那么假设从(1,1)(1,1)走到 当前格子的左侧格子 的路径条数是xx,从(1,1)(1,1)走到 当前格子的上方格子 的路径条数是yy,那么从(1,1)(...原创 2021-08-30 09:55:01 · 319 阅读 · 2 评论 -
AC自动机学习笔记
虽然 NOIp 原地爆炸了,目前进入 AFO 状态,但感觉省选还是要冲一把,所以现在又来开始颓字符串辣首先先复习一个很早很早就学过但忘记的算法——自动 ACAC自动机。AC 自动机能够在O(∑|s|)O(∑|s|)的时间内解决多模式串的问题,你可以理解为它把 KMP 放在了 trie 树上。举个例子,S={"abc","bcd","cd"},T="abcdbc"S={"abc","bcd","cd"},T="abcdbc"。首先建出 trie 树:我们沿着 trie 树的边走,1...原创 2021-08-30 09:47:19 · 319 阅读 · 0 评论 -
P7772 [COCI 2009-2010 #2] FAKTOR 题解
题目:P7772 [COCI 2009-2010 #2] FAKTOR这题是一个数学题,我们可以直接算出来。由于会向上取整,让NN最小的话。那么\left\lceil\dfrac{N}{A}\right\rceil⌈AN⌉最好是I-1I−1点几。所以,我们先A\times(I-1)A×(I−1),但是这会使得I=I-1I=I−1,所以还要再加11,这样向上取整就成II了。那么N=A\times(I-1)+1N=A×(I−1)+1。代码就很简单了(就像P1001一样):...原创 2021-08-25 10:18:41 · 241 阅读 · 0 评论 -
二分学习笔记
wqs 二分最初由王钦石在他的 2012 年国家集训队论文[1]中提出,而从 IOI 2016 的Aliens题目开始,这种方法开始逐步在竞赛圈中有了一定的地位。在国内我们一般称为「wqs 二分」,而在国外一般称为「Alien Trick」。由于最初的论文讲解得比较简洁,因此我在学习 wqs 二分时还同时参考了[2]以及[3]两篇文章,其中[2]对于 wqs 二分能够解决的问题类型给出了明确的定义,[3]使用图解形象化地展示了 wqs 二分的本质。本文将会结合力扣平台的题目188. 买卖股票的...原创 2021-08-24 19:03:39 · 226 阅读 · 0 评论 -
P7834 [ONTAK2010] Peaks 加强版 题解
下面称Kruscal建树的时候的产生的点的权值为 “权值”,题目中给的点权称作 “贡献”。先是对于原图跑最小生成树的同时建立Kruscal重构树 随后 dfs 遍历整棵树,维护好倍增数组以及给叶子节点(原图节点)编号,并且处理出每个非叶子节点uu为根的子树中包含的叶子节点的编号 最大 / 最小值。 按照编号的顺序将叶子节点的 "贡献" 插入主席树中。 查询的时候就倍增找到询问的点uu在树中最远的一个满足权值\leq x≤x的节点pp(因为深度越浅,权值越大),它为根的子树里面...原创 2021-08-24 18:55:07 · 276 阅读 · 3 评论 -
P7825 「RdOI R3」VSQ 题解
很明显O(n\sqrt{n}\log n)O(nnlogn)的算法无法通过如此大的数据范围,我们考虑是否存在O(n\log^2n)O(nlog2n)的算法。首先我们想到构造一个长度为n-1n−1的0101串bb为b_i=a_i\ xor\ a_{i+1}bi=aixorai+1。这样,长度为k-1k−1且全为11的bb的子串就代表了一个长度为kk的 VS 串。我们考虑如何去维护bb数组,先看如何查询。设极长连续串l,rl,r为\forall ...原创 2021-08-24 18:53:03 · 170 阅读 · 0 评论 -
动态规划(dp)学习笔记
1、动态规划原理适合应用动态规划方法求解的问题具有两个要素:最优子结构和子问题重叠。1.1、最优子结构所谓问题具有最优子结构性质,就是问题的最优解包含其子问题的最优解。这个要素可以帮助我们确定一个问题是否可以应用动态规划或者贪心策略解决。而发掘一个问题的最优子结构性质的过程,可以遵循以下通用模式:证明问题最优解的第一个组成部分是做出一个选择; 对一个给定问题,假定在其第一步选择中,已知哪种选择能得到最优解(不关心如何得到这种选择); 对这一给定的最优解选择,确定会产生哪些子问题,以及如何原创 2021-08-24 17:48:14 · 216 阅读 · 0 评论 -
dWoi Round 2 赛后总结贴
首先,恭喜 dWoi Round 2 圆满结束。其次,提供一些链接:知乎评价:https://www.zhihu.com/question/479933564 您可以在知乎评价中说明自己对本场比赛的评价,或在本帖下方回复均可。 题解: A:https://www.luogu.com.cn/blog/Shuchong/dwoi-round-2-a-ti-xie B:https://www.luogu.com.cn/blog/Shuchong/dwoi-round-2-b-ti-xie C原创 2021-08-24 17:24:14 · 176 阅读 · 0 评论 -
P1009 [NOIP1998 普及组] 阶乘之和 题解
其实这道题用二维数组做高精会更好理解(也好打一些),奇怪为啥没这么打的(当然啦,有一点点浪费空间(也就2M?))首先我们发现,求的是1到n所有阶乘的和,而阶乘又有递归写法(n!=(!n*n))那么直接用递推一直推到!n,然后再把所有的都相加就可以了(当然是倒序存储)关于进位:单个数组位置只存一个(其实可以多个)数位,乘了之后做操作的时候只需要判断当前位置是否是该行最后一位,如果是就++,那么它会一直循环到刚好合适为止。代码如下(拒绝复制,共创和谐CSDN)#include<ios原创 2021-08-23 14:58:05 · 349 阅读 · 0 评论 -
P1295 [TJOI2011]书架 题解
发个O(n)的题解先写个dp方程f[i]=f[j]+max(a[j+1]...a[i])(s[i]-s[j]<=m)对于转移方程可行的j且a[j+1]<=max(a[j+2]...a[i])f[j]+max(a[j+1]...a[i])与f[j+1]+max(a[j+2]...a[i])后半段相同易知f[j]<=f[j+1],所以前者更优推广可得最优转移一定在a[q1]>a[q2]>a[q3]>a[q4]>...>a[qj]中f[a[q原创 2021-08-23 10:21:30 · 128 阅读 · 0 评论 -
P7788 [COCI2016-2017#6] Savrsen
这里是题目传送门。这道题目的意思是定义f(x)f(x)为xx减去其因数之和的绝对值,给出一区间[a,b][a,b],求f(a)+f(a+1)+...+f(b)f(a)+f(a+1)+...+f(b)之和。首先,我们可以算出[1,b][1,b]的每个数的因数之和,存在数组vv里,然后再从aa至bb遍历一次,把每个数的因数和与其本身相减取绝对值,最后输出就可以了。注意:必须每次相减时都取绝对值,如果等至输出时再取绝对值可能会存在相加时正负抵消的情况,导致出现错误的答案。代码...原创 2021-08-23 09:50:35 · 494 阅读 · 0 评论 -
P7826 「RdOI R3」RBT
预处理 DFS 序\operatorname{dfn}(i)dfn(i)和每个节点的子树中 DFS 序最大值\operatorname{low}(i)low(i),将树上问题转化为序列问题。我们可以把「出现次数为奇数」转化为异或操作,考虑分块,在每个块内维护一个bitset,每一个二进制位代表[0,p)[0,p)范围内的一个整数,维护块内异或和即可。对于11操作,我们可以将bitset整体左移vv位,对于大于pp位的部分截断并移至最低位。 对于22操作,直接暴力重构整个...原创 2021-08-23 09:44:41 · 124 阅读 · 0 评论 -
P7834 [ONTAK2010] Peaks 加强版 题解
下面称Kruscal建树的时候的产生的点的权值为 “权值”,题目中给的点权称作 “贡献”。先是对于原图跑最小生成树的同时建立Kruscal重构树 随后 dfs 遍历整棵树,维护好倍增数组以及给叶子节点(原图节点)编号,并且处理出每个非叶子节点uu为根的子树中包含的叶子节点的编号 最大 / 最小值。 按照编号的顺序将叶子节点的 "贡献" 插入主席树中。 查询的时候就倍增找到询问的点uu在树中最远的一个满足权值\leq x≤x的节点pp(因为深度越浅,权值越大),它为根的子树里面...原创 2021-08-23 09:42:03 · 175 阅读 · 0 评论 -
洛谷CGOI 暑期欢乐赛 Round1 赛后总结贴
得分情况第一题有1414人 AC,符合预期。 第二题有22人 AC,略低于预期。 第三题有11人 AC,不符合预期。 第四题有66人 AC,略低于预期。总体而言,难度和得分情况大致符合预期。奖金发放我们会按照比赛界面的约定发放奖金,相关情况如下:[\texttt{13:26}][13:26]恭喜 @ODTREE王子首 A T1![\texttt{14:10}][14:10]恭喜 @Silver187首 A T3![\texttt{14:28}][14:...原创 2021-08-23 09:38:46 · 313 阅读 · 2 评论 -
洛谷日报 第 358 期 2021 年 8 月 19 日
洛谷日报 第 358 期 2021 年 8 月 19 日卢卡斯定理学习笔记作者:ApocalypseTqhttps://yangty.blog.luogu.org/lucas-theorem-note部分文章同步发表于:微信公众号 新浪微博 今日头条 百家号 搜狐号 网易号 大鱼号部分代码过多、内容过于深奥的文章,不适合发布于其他自媒体平台。管理员有可能不另行告知,只发布于洛谷主站。对文章的评论请在博客页面中评论,本帖中的文章会持续更新。链接失效反馈贴:https:原创 2021-08-21 09:39:02 · 337 阅读 · 0 评论 -
P4565 [CTSC2018]暴力写挂 题解
感谢i207M神犇教我的边分树Orz这题让我们求这个:ans=max_{x,y}\{deep_x+deep_y-deep_{LCA(x,y)}-deep'_{LCA'(x,y)}\}ans=maxx,y{deepx+deepy−deepLCA(x,y)−deepLCA′(x,y)′}然后这式子里带了2个LCA不好处理,给他变形:ans=\frac 1 2max_{x,y}\{dis(x,y)+deep_x+deep_y-2deep'_{LCA'(x,y)}\}ans=21maxx原创 2021-08-20 17:04:51 · 195 阅读 · 0 评论