Eter`nal
码龄4年
关注
提问 私信
  • 博客:32,658
    32,658
    总访问量
  • 114
    原创
  • 1,413,995
    排名
  • 14
    粉丝
  • 0
    铁粉

个人简介:蒟蒻菜鸟的进阶之路。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2020-10-12
博客简介:

m0_51488693的博客

查看详细资料
个人成就
  • 获得60次点赞
  • 内容获得28次评论
  • 获得26次收藏
创作历程
  • 113篇
    2021年
  • 1篇
    2020年
成就勋章
TA的专栏
  • 数据结构
    1篇
  • 数论
    4篇
  • icpc
    7篇
  • 牛客
    19篇
  • atcoder
    1篇
  • ccpc
    2篇
  • cf
    9篇
  • AcWing
    4篇
  • 杭电
    5篇
  • 图论
    3篇
  • 动态规划
    5篇
兴趣领域 设置
  • 人工智能
    机器学习深度学习神经网络
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

357人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

2020.icpc 南京

Evil Coordinate 构造+模拟大意:给定长度为 n 的由 “LRUD” 组成的字符串,以及一个障碍点坐标,问任意排列字符串是否能避开障碍点,若可以避开,输出排列后的字符串。思路:分类讨论的写法:大致构造角度,对于终点在障碍点的没办法,对于终点不在障碍点的若L,R 均存在,若不能走到与障碍点x的坐标相等,那么显然可以先把L,R 输出完,然后对于U,D随便输出就行,对于L,R 恰好走到与 x 的坐标相等,我们可以随便拿出一个 L或 R ,然后类比于上面,最后再把拿出来的那个字符输出就行了,.
原创
发布博客 2021.12.13 ·
362 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Codeforces Round #736 (Div. 2) D

Integers Have Friends 思维、双指针、st表大意:给定一个长度为 n 的序列,若存在一段连续的子序列 [l,r] 满足almod  m=al+1mod  m=......=armod  ma_l \mod m = a_{l+1} \mod m = ...... =a_r \mod mal​modm=al+1​modm=......=ar​modm (m>=2)则称该子序列为 友好子序列。求满足条件的最长友好子序列长度。思路:对于 a%m=b%m 通过移项,其实也就是 (
原创
发布博客 2021.12.06 ·
294 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020 icpc 济南

Matrix Equation 高斯消元大意:给定 01 矩阵 A,C求满足 A×B=B⊙CA\times B=B\odot CA×B=B⊙C 01 矩阵 B 的个数。×\times× : Di,j=∑k=1nAi,kBk,jD_{i,j}=\sum_{k=1}^n{A_{i,k}B_{k,j}}Di,j​=∑k=1n​Ai,k​Bk,j​⊙\odot⊙: Di,j=Ai,jBi,jD_{i,j}=A_{i,j}B_{i,j}Di,j​=Ai,j​Bi,j​思路:通过观察上述式子我们发现Di.
原创
发布博客 2021.12.02 ·
342 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Codeforces Round #757 (Div. 2) D1

大意:给定长度为 n 的序列 a, 序列中的最大值<=5e6 ,求对于该序列任意排序所得∑ingcd(a1,a2...ai)\sum{_i^n gcd(a_1,a_2...a_i)}∑in​gcd(a1​,a2​...ai​)的最大值。思路:令 fif_ifi​ 表示以数字 i 为 开头的 序列 a 的最大值想想对于 fjf_jfj​ 怎么从 fif_ifi​ 进行转移,我们想到只有当 j 为 i 的倍数是才会使得结果更优,因为如果不是 i 的倍数,那么开始的几个 gcd 是比 i 小的。所以我
原创
发布博客 2021.11.30 ·
640 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020 icpc 沈阳

​ Journey to Un’Goro 思维+dfs大意:有个只包含‘r,b’的长度为 n 的字符串,对于区间 [l,r] 若区间内 ‘r’ 的个数是奇数,那么称这个区间为好的区间,现在需要构造字符串,使得它的好的区间是所有字符串中最多的,输出’'好的区间‘ ’的个数,以及按字典序从小到大输出所有这样的字符串,若超过100个只需要输出100个。思路:对于区间问题,尤其是区间计数类问题,直接做不好做的话,我们不妨尝试转化成前缀问题。记 sumisum_isumi​ 为 字符‘r’ 的个数的前缀和。那.
原创
发布博客 2021.11.21 ·
665 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

牛客挑战赛54 C

小䓤的一个数字 思维大意:给定一个长度为 n (n<=3000)的01字符串s,和整数序列 a , 两种操作:操作1:每次将字符串中一个字符0变1,1变0.花费为aia_iai​操作2:整体向右平移1位,最左边补字符0, 花费为 b求将全0的字符串变成 s 的最小花费思路:如果不考虑操作2,显然是很简单的,直接算就行了。有了操作2,假设用了 k次操作2,那么对于某一个位置 i ,我们可以把 [i-k,i] 的任意一个位置变成 1,通过不超过k次操作2变成最终的s,也就是区间最小值问题 。.
原创
发布博客 2021.11.20 ·
367 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020 icpc 上海

Mine Sweeper II 思维大意:类似扫雷,给两个n*m 大小的矩阵A,B,‘X’表示雷,‘.’代表该位置是数字,数字的值是周围八个格子的雷的数量,问是否能不超过 n *m/2(下取整)次操作,使B的数字之和等于 A。输出修改后的矩阵,如果不能输出-1思路:看到 n*m/2 次操作,下意识感觉就两种情况。显然对于 B 和 A 不一样的个数小于操作限制的话,我们可以把 B 修改成和 A 一样输出就好了。对于 不一样的个数大于的情况,我们从反方向思考,那么一样的的个数一定是小于操作限制的。然后..
原创
发布博客 2021.11.16 ·
565 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

牛客练习赛91 C D

魔法学院(hard version) 并查集大意:给定一个字符串,有 m 个魔法,每个魔法可以将区间[li,ri][l_i,r_i][li​,ri​]的一个字符修改成cic_ici​,每个魔法可以使用无限次。对于每个字符,它的价值就是对应的ASCII码,求最终字符串价值的最大值。思路:我又又又又又…读错题了。看成了每个魔法把整个区间[li,ri][l_i,r_i][li​,ri​] 一下子全部修改成cic_ici​,然后想了个从小到大贪心,线段树维护的写法把B过了…然后就过不了 C,吐了。正解:..
原创
发布博客 2021.11.13 ·
826 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Atcoder ABC 225

题目链接大意:给定 n 个点,坐标(xi,yi)(x_i,y_i)(xi​,yi​) 每个点和(xi−1,yi)(x_i-1,y_i)(xi​−1,yi​) (xi,yi−1)(x_i,y_i-1)(xi​,yi​−1) 相连构成 ‘7’ ,一个‘7’能被看到:(xi−1,yi)(x_i-1,y_i)(xi​−1,yi​) (xi,yi−1)(x_i,y_i-1)(xi​,yi​−1)和原点连接内部不包含其他的’7’。现在可以去掉任意多个‘7’,问最多多少个‘7’可以被看见。思路:我们可以把(xi−.
原创
发布博客 2021.11.03 ·
207 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

2021 ccpc 网络赛重赛

Monopoly 思维、二分大意:有个长度为 n的序列 组成的环,序列有正有负,当走到位置 i 时,得分加上aia_iai​ ,m次询问,每次输入有个得分 x ,问最少进行多少步得 x 分,若不能输出-1。思路:记走一圈的得分为 s, 前缀得分preipre_iprei​ 对于 x ,若能获得得分 x,那么显然 x可以表示成 x=k∗s+preix=k*s+pre_ix=k∗s+prei​ ,对于此类式子往往和取模相联系,等式两边%s ,x%s=preipre_iprei​%s(注意当s=0时,是没.
原创
发布博客 2021.11.03 ·
205 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

acwing 340通信线路

题目链接:通信线路大意:有 N 座基站,P条双向电缆连接基站构成无向图,电缆的权重为 LiL_iLi​,对于从 1-N 的路径,可以最多使 k 条电缆的权重变为0,剩余该路径的权重最大值最为此条路径的花费,求花费的最小值。0≤K<N≤1000,1≤P≤10000,1≤Li≤10000000≤K<N≤1000,1≤P≤10000,1≤L_i≤10000000≤K<N≤1000,1≤P≤10000,1≤Li​≤1000000思路:我们注意到最终求的剩余电缆的最大值最小,不妨想想是否能二分
原创
发布博客 2021.10.30 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

牛客练习赛90 C、D

盾与战锤 思维大意:有一个护盾,每 k 秒刷新一次,能吸收 S 的伤害,给定一个长度为 n 的序列,对于序列的每个数造成伤害需要1秒,当护盾刷新时,先刷新护盾,然后造成伤害,并且护盾不会继承上次未打破的,对于 1<=k<=n 的每个 k ,确定一个子序列,使得伤害最大,输出最大伤害值。思路:对于任意一个 k ,显然只有当破开盾才会造成伤害,假设破开 x 次盾,盾吸收的伤害就是x*s 是固定的,此时造成伤害最大就是最优的,所以直接从大到小排序,选最大的就行了。代码如下:#include.
原创
发布博客 2021.10.30 ·
280 阅读 ·
1 点赞 ·
2 评论 ·
1 收藏

2021RoboCom机器人开发者大赛复赛解题

冒险者分队 思维大意:给定初始三个属性 a1,b1,c1a_1,b_1,c_1a1​,b1​,c1​,以及目标三个属性 a2,b2,c2a_2,b_2,c_2a2​,b2​,c2​。 每次可以选择其中一个属性值+40,另外两个-20,或者其中两个+20,另外一个-40。问最少经过多少次操作可以变成目标属性值。思路:首先我们观察到,无论哪种操作,变化值都是20的倍数。所以差值不是20的倍数的一定不行,然后每次操作不改变差值总和,并且最终差值的总和为0,所以在操作过程中差值总和始终为0。在上面的基础上,.
原创
发布博客 2021.10.27 ·
1196 阅读 ·
0 点赞 ·
1 评论 ·
6 收藏

2020年湖南省大学生计算机程序设计竞赛

String Commutativity kmp 求最小循环节大意:给定 n 字符串s1,s2......sns_1,s_2......s_ns1​,s2​......sn​ 问多少对 i,j 满足 i<j并且 si+sj=sj+sis_i+s_j=s_j+s_isi​+sj​=sj​+si​。n<=1e5,所有字符串的总长度不超过 5e6。思路:首先得从 si+sj=sj+sis_i+s_j=s_j+s_isi​+sj​=sj​+si​ 中分析出si和sjs_i和s_jsi​和s..
原创
发布博客 2021.10.27 ·
397 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

2021.icpc网络赛第二场

Leaking Roof 签到大意:给定 n*n 格子,每个格子的水量为m, 当前格子的水会向周围有公共边的,且高度严格大于的格子等量流动,当且仅当高度为0时水会流出,求最终每个格子流出的水量。n<=500思路:高度最高的格子只会往别的格子流水,直接按高度从小到大排序,模拟就好了。代码如下:#include <bits/stdc++.h>using namespace std;const int N=510;typedef pair<int,int> PI..
原创
发布博客 2021.10.20 ·
335 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

牛客挑战赛 53 C题

奇奇怪怪的魔法阵 状压dp大意:有 n 个点,编号0-n-1, n<=26。m条边。即某个点集中任意点之间不存在边,则称这个点集为“独立集”,求出虽有点集的子集中“独立集”的个数。空集也算“优秀点集”思路:看到 n 最大只有 26。又是计数类问题,比较裸的状态压缩dp。我们用二进制位 为 1表示选这个点,0表示不选。用 mskimsk_imski​ 表示所有和 i 有边的点在状态转移过程中,对于状态 x 中的任意一点 i,显然可以将 x 的所有独立集分成两部分含 i 和不含 i,对于不含 .
原创
发布博客 2021.10.19 ·
108 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

AcWing 903. 昂贵的聘礼

昂贵的聘礼大意:给定一个物品,以及购买它的价值,可以直接购买,或者可以通过其他提前获得其他物品,然后花较少的金币进行换购,给定换购的关系,并且每个物品有一个等级,购买的一系列物品等级差值的最大值不能超过 M。求最终能购买到这个物品所花费的最小价值。思路:对于问题一步一步分析,我们先不考虑等级的限制,对于任意一个物品y,假设它可以通过物品 x 再加上一些金币w换购,那么我们可以从 x 向 y连一条有向边,权重为 w,并且对于x,y 也可以不需要换购,直接够买,所以我们可以建立一个虚拟源点,连有向边,权重就
原创
发布博客 2021.10.18 ·
105 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Codeforces Round #748 (Div. 3) E、D1、D2

Gardener and Tree bfs大意:给定一棵无根树,进行 k 次操作,每次操作可以删除所有的叶子节点,问最终剩多少个节点。思路:首先叶子节点的度数是为 1 的,每次删除叶子节点,下次删除的是和叶子节点相连的点,我们直接维护度数,每次把度数为 1 的点入队进行bfs 就行了。代码如下:#include <bits/stdc++.h>using namespace std;typedef long long LL;typedef pair<int,int>
原创
发布博客 2021.10.17 ·
138 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AcWing 920. 最优乘车

最优乘车大意:有若干条公车线路,以及若干站牌,公交路线是单程的,求从某点出发到达目的地的最少换乘次数。思路:图论问题难的地方在于建图,建图的方式正确了剩下的大部分都是模板类的内容。这里我们要求的是最少换乘次数,如果我们能建图的时候想办法将换乘次数体现在边权中,剩下的就是个最短路模型。我们看这样一条路线信息, 1->3->5->7我们可以在1处通过坐一次车到3,5,7,从 3 坐一次车到 5,7…我们可以在从1 向3,5,7连一条边权为 1的有向图,以这样的方式建图,跑一遍最短路求的
原创
发布博客 2021.10.15 ·
130 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

AcWing 最小花费

最小花费大意:有 n 个人 ,某些人之间可以相互转账,但是需要一定的扣除百分之几的手续费,问 A最少要拿多少钱可以到 B 手中100。思路:假设最初的钱是 x,手续费为w,变成 x*(1-w) =100,若要 x 最少,那么也就是(1−wi)(1-w_i)(1−wi​)的乘积最大。这里我们需要知道的是,dijkstra实际上是基于贪心求的最短路,所以相应的我们也可以求最长路。然后这里是乘积,我们可以进行类比,因为有 log(xyz)=logx+logy+logzlog(xyz)=logx+logy+l
原创
发布博客 2021.10.15 ·
101 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多