/* 返回顶部 */
摘要: 新博客点这里 (题解之类的还是会发布在这边) 文章有时效性,最后更新于2021/12/12! 我是Mogeko! 本来这个博客就想丢在这里不管的,但是时隔好几个月再回来看这个文章实在太羞耻了,而且还时不时会被前辈后辈同辈的oier和acmer翻出来鞭尸,所以就稍微更新一下了啊啊啊! 我已经AFO了! 阅读全文
posted @ 2020-03-19 21:26 Mogeko 阅读(1502) 评论(6) 推荐(1)
摘要: gate 发现这道题以前没写题解…… 首先可以看出是并查集。 物种间有同类、吃、被吃三种关系。 除了要记录物种,还要记录种间关系。 这时就要用到种类并查集。这是一种带权并查集,其中每个节点要记录它与父节点的关系,这个关系在经过路径压缩后是不变的。 设这个权值为d,则有 \(d[x]-d[y]=0 阅读全文
posted @ 2021-10-27 09:08 Mogeko 阅读(68) 评论(0) 推荐(0)
摘要: 组合数可以表示为 Cmn=n!m!(nm)!
假设n!,m!,(nm)!含因子2的个数分别为A,B,C 则当A=B+C时,Cmn为奇数 那么如何求出n!的因子个数呢? 对于一个质数p, 它的倍数kpi含因子p的个数为 阅读全文
posted @ 2021-10-14 00:47 Mogeko 阅读(645) 评论(0) 推荐(0)
摘要: qsort的用法: 包含在头文件<stdlib.h>里 void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void*, const void*)) 举个例子,对int(a[0],a[9])进行排序: qsor 阅读全文
posted @ 2021-10-13 15:14 Mogeko 阅读(68) 评论(0) 推荐(0)
摘要: gate 需要用C语言实现读入一行含空格的字符串,又不想一个一个char读入? scanf在读入字符串时遇到指定字符结束: scanf("%[^\n]s", s); //遇到换行结束 scanf("%[^#,,或%结束 不写的话,就是默认遇到换行或空格结束 对于这 阅读全文
posted @ 2021-10-10 22:35 Mogeko 阅读(455) 评论(0) 推荐(0)
摘要: 想了想,以后学习的东西还是丢这里吧 创建项目真的挺麻烦的... 反正就是: 创建项目->空项目->解决方案资源管理器->源文件->右键添加新建项->c++文件->在下面把后缀改成.c 放头文件里好像也没有大问题,但是那边就放.h用吧... 关于使用VS时出现scanf有错误要改用scanf_s的处理 阅读全文
posted @ 2021-09-26 19:59 Mogeko 阅读(120) 评论(0) 推荐(0)
摘要: 这是在我作为一个oier的时候发生的故事,但有很多和oi无关的事情;浙江集训以后的经历我都已经写过游记了。流水账。 绝大多数内容是我凭记忆写的,可能会有不确切之处,请谅解。 由于其中的内容可能涉及个人隐私,一部分的人名用ID或外号代替。如果有冒犯,请联系我,我会马上修改删除。 2018年8月,我被2 阅读全文
posted @ 2020-11-20 23:01 Mogeko 阅读(1080) 评论(3) 推荐(0)
摘要: 祝大家CSPrp++ 😃 函数定义了两遍 bool函数返回值一直为true:忘传参数了 线段树没有buildi,l写成1了,或者循环里枚举i写成0,1RE:for循环里i写成i++ 链前里iv写反 用^1表示反向边时,下标从$0 阅读全文
posted @ 2020-11-07 08:55 Mogeko 阅读(90) 评论(0) 推荐(0)
摘要: gate 有向图求最短路,需要进行三种操作: 点向点连边 点向区间连边 区间向点连边 用线段树优化建图可以解决。 建立两棵线段树,一棵存入边,一棵存出边 入边: 出边: 所以线段树看起来应该是这样子的: 线段树内的边权为0。 code #include<cstdio> #include<iost 阅读全文
posted @ 2020-08-05 20:59 Mogeko 阅读(252) 评论(0) 推荐(0)
摘要: 对于树上的节点i,设d[i]i的度数,fai的父亲,ji的儿子。 假设边权均为1。 分别考虑儿子到父亲、父亲到儿子的期望。 设F[i]表示儿子i到父亲的期望距离。 可以分为2种情况: 直接到父亲。 概率为$\dfrac{1} 阅读全文
posted @ 2020-08-01 13:08 Mogeko 阅读(352) 评论(0) 推荐(0)
摘要: gate 有pi的概率取最大,1pi的概率取最小。 首先把权值离散化 每个节点开一棵线段树,记录每个权值被取到的概率。 对于线段树i,设两个子树为ls,rs,取到值j的概率f[i][j] \(f[i][j] = \\ f[ls][j]*(\sum\limits_{k=1 阅读全文
posted @ 2020-07-30 22:44 Mogeko 阅读(151) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示