自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 收藏
  • 关注

原创 2024牛客暑期多校训练营7——K

首先能得出的结论就是,要让t成为前缀,那么肯定是要从正反s串中依次找到t串中每个字母的第一次出现的位置。从而符合要求的子串肯定是从这些第一次出现的位置开始往后拼接的。前后找完之后观察,是否存在相交情况,不存在直接,计算子序列就行,如果从在通过马拉车找到包含t串末尾的回文串长度,这些长度可能就是前区间中用来交叉的长度。要在s串中找出子序列使其正过来和反过来的前缀同时都为t串。

2024-08-07 15:16:54 302

原创 2024牛客多校D.XOR of Suffix Sums

如果一个数相对当前二进制位产生贡献,那么我们就可以先将其对下一个更大的二进制位进行取模(限制上限)如果取完模之后发现大于当前二进制位,那么就很显然,能对当前位作出贡献。11>8,那么11就会对第四个二进制位作出贡献。题目要求的是求后缀和的异或和。首先我们考虑疑惑和情况下,什么时候为1,很显然,在当前二进制位0和1 的。这个时候我们搬出树状数组用来统计每个数对相应的二进制位上的贡献。变化的后缀和很好维护,但是难就难在求玩后缀和后的异或和上面。那么我们只需要逆推,依次计算对应二进制位上的1的数量就行。

2024-07-18 09:55:49 385

原创 JAVA学习(var,if判断,switch语句)

不要忘记break和defaul,但是使用类似模式匹配(Pattern Matching)的方法,保证只有一种路径会被执行,并且不需要。表示“引用是否相等”,或者说,是否指向同一个对象。例如,下面的两个String类型,它们的内容是相同的,但是,分别指向不同的对象,用。在Java中,判断值类型的变量是否相等,可以使用。但是,判断引用类型的变量是否相等,要判断引用类型的变量内容是否相等,必须使用。当需要返回值的时候可以这么写,用。错误,可以利用短路运算符。

2024-07-11 09:53:48 169

原创 java定义

JDK=JRE+compiler,debugger 等工具。JDK 是java 从源码编译,到运行所需要的工具集。JRE 是java 再虚拟机运行的所需要用到的工具集。JSR 是java 接口的定义。JCP是审核JSR的团体。

2024-07-08 09:38:05 107 1

原创 nyist_acm 个人积分赛1(部分题解会补充)

看到题解说是马拉车算法,我赛时并没想到(好吧其实我是比赛完才知道有马拉车这个算法)因为字符串的长度只有1000,直接暴力跑其实就可以了,但是要注意的是;回文串有俩种形式,一种是aba的另一种是baab的形式,这是需要注意的地方这是一个博弈大家叫这种博弈为对称博弈。

2024-03-07 20:33:54 658

原创 L. Statues(2021-2022 ICPC East Central North America Regional Contest (ECNA 2021)

例如如果想让 N 路和 W 路沿线成为最佳观赏点,可以使用图 L.1b 中的对角线,将最小的雕像放在对角线 𝑎 中,次小的雕像放在对角线 𝑏 中,接下来三个最小的雕像放在对角线 𝑐 中,接下来两个最小的雕像放在对角线 𝑑 中,以此类推。如果想要沿 W 路和 S 路获得最佳观赏效果,可以使用图 L.1c 中的对角线,将最小的雕像放在对角线 𝑎 中,接下来的两个最小的雕像放在对角线 𝑏 中,接下来的三个最小的雕像放在对角线 𝑐 中,接下来的最小的雕像放在对角线 𝑑。中央城最著名的是它的雕像公园。

2024-01-18 15:51:02 928

原创 数据库最基础的操作(期末复习篇)

【代码】数据库最基础的操作(期末复习篇)

2024-01-10 14:28:30 434 1

原创 XOR Construction

实际上实在寻找一个 b1 使得异或出来的所有值越小越好,所以拆位,假设所有数字的第 i位为 1 的个数大于为 0 的个数,那我们最好异或上一个 2^i,这样可以使大部分数字变小。有因为当确定一个数的时候就可以通过异或得到其他所有的数,且题目所求的是一个n-1的全排列。那么求出a的前缀异或和arr之后就得到bi=b1^arri。通过题目可以得出结论。

2023-11-10 16:01:56 334

原创 约数之和 (普通快速幂求逆元做法)

假设现在有两个自然数 A 和 B,S 是 AB的所有约数之和。请你求出 Smod9901的值是多少。

2023-11-03 20:44:16 199

原创 约数之和 (简单+普通)

给定 n 个正整数 ai,请你输出这些数的乘积的约数之和,答案对 109+7取模。

2023-11-03 17:27:31 364

原创 费解的开关

你玩过“拉灯”游戏吗?25盏灯排成一个 5×5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。我们用数字 1表示一盏开着的灯,用数字 0表示关着的灯。下面这种状态给定一些游戏的初始状态,编写程序判断游戏者是否可能在 6步以内使所有的灯都变亮。

2023-11-02 20:42:48 94

原创 64位整数乘法

把 b写成二进制形式,然后如果二进制最后一位为1就加上它a*(2^n)次方(n与这位的位置有关)a*b其实就是b个a相加:a+a+a+a+a....a+a+a+a。但是由于a和b都很,因此采用快速幂的思想。求 a 乘 b 对 p 取模的值。并且每次计算后取模就可以了。

2023-11-02 15:37:50 103

原创 Codeforces Round 905 (Div. 3)

vp下来,D题让我其实有点手足无措,当时想着树状数组,死活想不出来,因为之前做过一次贴海报的题目,所以就感觉这题也很像,直接思维定式了。F题没做出来也很可惜,把G1写完之后就静不下心来看F,有点浮躁了

2023-10-30 10:32:15 235

原创 Garage(COMPFEST 14 - Preliminary Online Mirror (Unrated, ICPC Rules, Teams Preferred))

题目的大概意思就是寻找第n个最小的正方形面积;通过打表很容易就能找到规律

2023-10-24 10:53:28 66

原创 P1252 马拉松接力赛 (洛谷)

某城市冬季举办环城 25km 马拉松接力赛,每个代表队有 5 人参加比赛,比赛要求每个的每名参赛选手只能跑一次,一次至少跑 1km 、最多只能跑 10km,而且每个选手所跑的公里数必须为整数,即接力的地方在整公里处。5行数据,分别是 1 到 5 号队员的测试数据,每行的 10 个整数,表示某一个运动员尽力连续跑 1km、 2km、。首先,我们把每个人跑每个1km所要用的时间,由于每个人都是需要跑的,所以每个人起步距离1km?两行,第一行是最短的时间,第二行是五个数据,分别是1到5号队员各自连续跑的公里数。

2023-10-03 17:10:30 214

原创 I- yh的线段(2023河南萌新联赛第(四)场:河南大学)

来源:牛客网yh喜欢好线段,好线段即两条线段相交且不与其他线段重合的线段。两条线段[l1,r1]和[l2,r2]相交(如果存在至少一个x,使得l1≤x≤r1和l2≤x≤r2,则认为两个线段相交)。yh在数轴上有几条线段,他可以把在数轴上相交的线段结合,但是对于每个线段只能与其它线段结合一次,且不能与其它线段有重合部分,yh可以舍弃任何数量的线段。

2023-08-03 16:41:34 201

原创 F-小富的idea(2023河南萌新联赛第(四)场:河南大学)

卷王小富最近又在内卷,并且学了一门新的技能:书法,但是不幸的是在国庆节的书法大赛上,小富不小心打翻了墨水瓶,导致很多墨滴溅在了他的书法纸上,看着墨水不断扩散,浸透了他的书法纸,小富突然萌生了一个想法:我能不能知道某时刻纸上一共有多少墨块?

2023-08-03 15:07:36 1173

原创 Nazrin the Greeeeeedy Mouse(2023牛客暑期多校训练营5)

来源:牛客网房子里有 nn 奶酪。ii -th奶酪介于点和点 ii i+1i+1 之间。ii 奶酪的大小和 aiai​ 重量是 bibi​。纳兹林 11 一开始就想偷一些奶酪。她有机会 mm 拿奶酪:在 ii -第一次,纳兹林带来了一个大小的 sziszi​ 袋子.既然她贪婪,因为 i>1i>1 , szi≥szi−1szi​≥szi−1​ 永远持有。她可以从点 11 出发,拿一些奶酪。她只能从一个点到 x+1x+1 另一个点 xx 或向后移动。

2023-08-01 10:58:51 202

原创 石子合并(区间DP)+滑雪(记忆化搜索)

设有 N 堆石子排成一排,其编号为 1,2,3,…,N。每堆石子有一定的质量,可以用一个整数来描述,现在要将这 N 堆石子合并成为一堆。每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的顺序不同,合并的总代价也不相同。例如有 4 堆石子分别为1 3 5 2, 我们可以先合并 1、2 堆,代价为 4,得到4 5 2, 又合并 1、2 堆,代价为 9,得到9 2,再合并得到 11,总代价为 4+9+11=24;

2023-07-20 11:42:33 183

原创 自动收小麦机(牛客2023萌新)

链接:https://ac.nowcoder.com/acm/contest/61657/A来源:牛客网在游戏MC(我的世界)中,如果小麦碰到水流就会掉落,但是mc中的水不能无限流动,在同一高度一桶水往一个方向流最多可以流动8格(算上本身一格)。但是如果流动过程中遇到了阶梯下降了高度,则从下降的那一格开始重新计算距离,所以根据这个原理可以设计一种自动收小麦机,只需要从最高处倒一桶水就可以把所有小麦变成掉落物。这次小小航也根据这个原理建造了一个自动收小麦机,但是小小航并没有精确的计算台阶的位置,

2023-07-19 20:06:04 1545 4

原创 CCPC 2022济南站+2020威海站+2019秦皇岛站+2022绵阳站(部分)(暑假集训)

思路:提前进行/2的预处理操作,操作之后 ,在记录下要达到一样的步骤,由于可以可删除m座塔,所以此时,将步骤最多的删除,就是答案了。

2023-07-13 11:26:52 657 3

原创 The 14th Jilin Provincial Collegiate Programming Contest(暑期训练)

node F会选择I,J中值更大的J,更新为5,G会选择K,L中值更大的L,更新为8。从上往下,单数层是我方行动,双数层是对方行动,我方行动需要选择对我最有利的行动,即value大的行动,对方行动则是选择使我方最不利的行动,即value小的行动。,就将行为i的倍数,列为j的倍数的格子上的数字进行变化:如果原来是0,变成1,如果原来是1变成0,问你遍历完所有格子后,矩阵中1的个数是多少。什么是最小最大搜索?再输入一个3 * 3的初始状态的矩阵,.代表还没下,O是Alice下的,X表示是Bob下的。

2023-07-05 17:37:48 1700

原创 最长上升子序列 (从dp---->贪心)

思路:题目要求找到最长上升的子序列,那么这个时候,我们可以假以第i个为结尾,那么此时以i为结尾的最大上升子序列是多少。但是这个时候,会发现,从第i个为结尾往前面找的话,是一个一个遍历的,也就是说时间复杂度是n*n,如果数据范围很大,那么就不能用了,不过好在这题n只到1000。

2023-07-05 14:57:55 195

原创 武汉理工大学第四届ACM校赛(部分补题与写题)

不难发现,增长程度是1,3,6,10......因此,不妨假设每天都雇佣满,那么总贡献就会一直按照前面的累加,这样其实就能得出一共要雇佣几天出来。当雇佣天数出来之后,我们只需要去拼凑每天的雇佣人数就能得出答案,第i天的雇佣贡献是 (总天数-第i天 +1)* 当天雇佣人数;开始时Ly没有任何农民,第i天白天Ly最多可以雇佣i个农民,Ly所雇佣的每个农民每天晚上可以生产出1块矿石。第二行包含用空格隔开的t个整数,第i个整数表示第i天白天雇佣农民的数量。如果有多种方案,输出在越早的时间雇佣农民尽量多的方案。

2023-07-03 17:33:52 468

原创 基础算法杂谈111

这时发现B的入度为 0,C的入度为 0,所以删除B和B上所连的边、C和C上所连的边,结果如下图:(拓扑排序有多种可能)将队列里的点依次出队列,然后找出所有出队列这个点发出的边,删除边,同事边的另一侧的点的入度 -1。如果所有点都进过队列,则可以拓扑排序,输出所有顶点。否则输出-1,代表不可以进行拓扑排序。这时整个图被删除干净,所有能进行拓扑排序。然后将入度为 0 的点放入队列。首先记录各个点的入度。

2023-07-03 10:57:01 162

原创 树与图的深度优先遍历

本题的本质是树的dfs, 每次dfs可以确定以u为重心的最大连通块的节点数,并且更新一下ans。也就是说,dfs并不直接返回答案,而是在每次更新中迭代一次答案。这样的套路会经常用到,在 树的dfs 题目中。

2023-06-30 16:17:02 287

原创 Dyson Box(假期集训)

思路:记录下每行每列的个数,当计算总长度时候,左右是否有方块有方块就-2,只要有重合的地方就-2。

2023-06-29 19:53:13 216 1

原创 水题杂谈222222

思路:Trie字符串就是把字符串像树一样存储下来例子:将如下字符串用trie存储然后在查找字符串的时候就顺着树查找,但是要在每个字符串的结尾位置打上标记好吧其实一个map容器解决n-皇后问题(dfs复习)八数码(bfs复习)在一个 3×3 的网格中,1∼8 这 8 个数字和一个x恰好不重不漏地分布在这 3×3 的网格中。在游戏过程中,可以把x与其上、下、左、右四个方向之一的数字交换(如果存在)。例如,示例中图形就可以通过让x先后与右、下、右三个方向的数字交换成功得到正确排列。

2023-06-28 21:06:44 197

原创 C. Robot Collisions(暑期集训)

其实就相当于一个括号匹配的过程,只有“)(”这样的括号才会碰撞,因为机器人是会动的,所以怎么去找到“)(”这样状态的括号,就可以用栈去模拟,“R”都往栈里面塞,“L”出现之后,弹出栈尾,进行碰撞。此时我们在加上边界,那么机器人不管怎么走都也只会这三种情况里面跳转,这个时候你在纸上画个线段就会发现,如果所在下标的奇偶性不同的话,那么这俩个机器人碰撞时间计算怎么算都要 +1,也就是会擦肩而过(当我们知道哪两个机器人将会碰撞时,就可以进行碰撞事件的计算,假设两机器人初始坐标为x1,x2(x1

2023-06-28 15:23:09 282

原创 水题杂谈1111111

思路:读入数据之后,全部按照左端值进行排序,每次让下一个集合与该集合的右端点进行比较即可。

2023-06-27 11:17:10 163

原创 B - Wonderful Array (暑假训练赛)

由于比大小的时候都是对m取余的,因此,就全部都先预处理一波,将x,b0,b1,b2....都对m取余一次。此时就会发现只要找到满足这样的所有的情况,那么就是答案,这个时候我们每次加的都是比m小的,所以只要bn中有几个m的倍数,就会出现几个这种>情况,所以我们只需要求出来bn是多少,然后除m就是>的情况,所以n-bn/m就是

2023-06-26 20:33:42 339

原创 如何提升 linux服务器的安全性

及时更新软件:定期更新操作系统和软件包,以修复安全漏洞和错误。使用自动化工具来协助管理和更新软件包。确保定期检查系统是否有未安装的安全补丁,并及时安装它们。安装防火墙:使用防火墙来限制入站和出站流量,只允许必要的服务访问。关闭不必要的端口,只开放必要的服务端口。使用 iptables 或 firewalld 等防火墙软件来配置防火墙规则。禁用不必要的服务:禁用不必要的服务和端口,以减少攻击面。例如,禁用不需要的网络服务,如 FTP、Telnet、SMB 等。

2023-05-20 20:17:53 723 1

原创 linux基础命令介绍

作用:vi命令是Linux系统提供的一个文本编辑工具,可以为文本内容进行编辑,类似于windows中的记事本。语法:tar [-zcxvf] fileName [files]语法:cp [-r] source dest。语法:tail [-f] fileName。语法:mkdir [-p] dirName。语法:rmdir [-p] dirName。语法:cat [-n] fileName。作用:对文件进行打包,解包,压缩,解压。语法:ls [-al] [dir]语法:rm [-rf] name。

2023-05-20 00:05:47 644 1

原创 linux介绍

【代码】linux介绍。

2023-05-19 23:24:28 422

原创 代码规范(以后会补充)

1.提升个人形象。在保证满足需求的同时,如果还符合代码规范,既可以减少愚蠢错误,也可以提升个人形象。2.代码是需要维护的。无论是自己维护,还是其他人维护,都需要阅读代码(长时间后自己的代码也会忘记)。符合规范的代码,能减少理解成本。按照规范设计的代码能够减少思维阅读的负担。3.团队合作。项目往往不是一个人完成。符合规范的代码方便团队合作,并且尽量减少愚蠢错误。在离开岗位(升职,换岗,换项目,辞职)时,方便团队成员接手代码。降低团队合作过程中的阻力4.赏心悦目。规范的代码就像整洁的桌面;摆放整齐的书架。

2023-04-10 17:16:36 857

原创 最长****子序列

dp思想(在研读写的博客后,打算记录下自己学习过程)通过最长上升子序列的拓展了解到,其实这是一个系列的问题主要代表有:1 最长上升子序列2 最长不上升子序列3 最长下降子序列4 最长不下降子序列就以最长上升子序列为例。(注意:这里面说的子序列不连续的)得到一个数组,求这个数组的最长上升子序列长度可以直接看出来这个数组的最长上升子序列是1 2 5 6,其长度也就是4.一眼就能看出来,但是用代码该怎么实现呢?介绍俩种方法:dp思想目前为止所接触的dp思想核心就在状态转移方程上。

2023-03-31 20:28:34 434 2

原创 D. Twist the Permutation

推导之后不难发现不存在无法实现的数据。通过逆向思维,从最终数组往前推,,推之前记录下所有的位置输入状态:3 2 5 6 1 4记录所所处位置的s数组为{0,5 ,2,1,6,3,4}(即数字1处在5号位置)。随后通过对i取余,从而判断是通过几次步骤得到的。os:怎么题目就没看懂没有思路的呢?

2023-03-30 10:03:04 88

原创 Disharmony Trees (好一个树状数组+离散化)

FAR的定义如下:如果我们根据这些树的X坐标从大到小进行排序,X坐标最小的树排在第1位,X坐标相同的树排在一起。如果我们根据这些树的高度从高到低排序,高度最短的树排在第1位,高度相同的树排在一起。那么他的F就是2,1,2,2,5.高度S同样如此排序,然后求俩俩之间F*S的和:v=min(h1,h2)*abs(x1,x2)因此,从上面的定义我们可以看出,如果两棵树的FAR越大,Disharmony值就越大。现在给你每棵树的X坐标和它们的高度,请告诉Sophia所有树中每两棵树的不和谐值之和。

2023-03-28 17:05:04 429

原创 C. Sequence Master(好题但是我不会)

内心os:什么啊,这什么题目啊,我怎么看不明白啊(找到中文题面之前),什么啊,这什么题目啊,我怎么还是不会啊(找到中文题面之后)看完一堆题解之后,我发现啊,这是数学题,所以一开始的看不懂,那就是真的看不懂了。n=2的时候,三种情况,全是2,全是0,3个-1和一个2,全部讨论取最小值即可。n%2=0的时候,要么全是0,要么是2n-1个-1和一个n,讨论。n=1的时候就是两个数的差值。n%2=1的时候,全是0。

2023-03-22 16:34:05 338 3

原创 F. Bouncy Ball

解析:其实题目怎么说的就按照他说的去做就可以了;

2023-03-20 15:02:25 346

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除