一些题解的传送门qwq

牛客小白月赛30题解 比赛传送门 没有参加正式赛,创了场重现赛来玩玩,AC8题 做最后俩题只剩15分钟,感觉没时间了就没写qwq 补题的时候发现并没有比前面的题目难多少呜呜呜 感觉小白赛的题目和以往相比变得简单了很多 考查了简单的数据结构以及它的应用,重点应该还是对思维的考察 A 黑白边 题目描述: n个点,m条边,每条边分为黑边和白边,现在需要挑一些边出来,使得n个点可以两两联通。 由于牛牛特别讨厌白边,所以在挑中的边中,让白边最少,输出白边的条数,如果不能两两联通,输出−1. 输入描述: 第一行两个整数n,mn,mn,m 阅读详情

前言

submit的次数不知道从什么时候开始就进入了倒数…
算是写点东西记录下来OI的最后时光吧qwq
为什么这篇文章不能算是原创啊qwq
在这里插入图片描述

Codeforces

Codeforces293

Codeforces Round#572 Div2 | 1199 E.F

AtCoder

ARC064

是不要贴几个代码才能算是原创啊…
本来想选转载就转载吧…结果还要附上原文链接…

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
struct node {
  int fa, mx, ch[26];
} a[N << 1];
char lx[N];
int vis[N << 1], R[N << 1], w[N << 1], id[N << 1];
int b[N << 1], len, cnt, last;

void init() {
  cnt = last = 1;
  memset(a, 0, sizeof a);
}

void insert(int x) {
  int p = last, np = ++cnt;
  R[np] = 1;
  a[np].mx = a[p].mx + 1;
  for(; p && !a[p].ch[x]; p = a[p].fa)
    a[p].ch[x] = np;
  if(!p) {
    a[np].fa = 1;
  } else {
    int q = a[p].ch[x];
    if(a[q].mx == a[p].mx + 1) {
      a[np].fa = q;
    } else {
      int nq = ++cnt;
      a[nq] = a[q];
      a[nq].mx = a[p].mx + 1;
      a[np].fa = a[q].fa = nq;
      for(; p && a[p].ch[x] == q; p = a[p].fa)
        a[p].ch[x] = nq;
    }
  }
  last = np;
}

void solve() {
  fill(vis + 1, vis + 1 + cnt, 0);
  int n = strlen(lx + 1);
  for(int i = 1; i <= n; ++i)
    b[i] = lx[i] - 'a';
  for(int i = 1; i < n; ++i)
    b[i + n] = b[i];
  int u = 1, l = 0, ans = 0;
  for(int i = 1; i < 2 * n; ++i) {
    for(; u && !a[u].ch[b[i]]; u = a[u].fa, l = a[u].mx) ;
    if(a[u].ch[b[i]]) {
      u = a[u].ch[b[i]], l++;
      if(l >= n) {
        for(; a[u].fa && a[a[u].fa].mx >= n; u = a[u].fa, l = a[u].mx);
        if(!vis[u]) ans += R[u];
        vis[u] = 1;
      }
    }
  } 
  printf("%d\n", ans); 
}

void prepare() {
  for(int i = 1; i <= cnt; ++i)
    w[a[i].mx]++;
  for(int i = 1; i <= len; ++i)
    w[i] += w[i - 1];
  for(int i = 1; i <= cnt; ++i)
    id[w[a[i].mx]--] = i;
  for(int i = cnt; i >= 1; --i)
    R[a[id[i]].fa] += R[id[i]];
}

int main() {
  init();
  scanf("%s", lx + 1);
  len = strlen(lx + 1);
  for(int i = 1; i <= len; ++i) {
    insert(lx[i] - 'a'); 
  }
  prepare();
  int T;
  scanf("%d", &T);
  for(int o = 1; o <= T; ++o) {
    scanf("%s", lx + 1);
    solve();
  }
  return 0;
}


本文作者:Averyta

博客地址:https://blog.youkuaiyun.com/AngryVegetable

【面试算法题合集】传送门 面试算法题合集 Google面试题 标题 原题链接 博客传送门 状态 最长公共前缀 原题链接 博客传送门 有效的括号 原题链接 博客传送门 字符串相乘 ... 阅读详情

相关推荐

4、设备树的处理(1)

其实到第4节才写设备树的问题完全是因为忘记了,之前有一个版本是先关闭了设备树的,习惯性的认为设备树已经处理完了,失误了!!!前文说过,这个系统是依着荣品的开发板和核心板来的,使用的是5.1内核的SDK。它的SDK里是开发板全功能的,所以设备树也是的。

wsen2012的博客 416

Shakti 2022 CTF(知识点备忘录)

一次入门级的ctf比赛传送门:( https://shakti22.ctf.eng.run/login)考点: 进入网页后发现只有一张图片,什么都没很可疑,查看源代码发现提示 访问该链接之后,发现只有输入密码才是关键的突破点,尝试xss,和sql均无果,看一下源代码有一段js的注释代码,审计代码可以知道是和密码有关的东西,最后会运行完会返回password的值 我们通过js的源码泄露,在本地写一个html的格式进行js代码编写,利用把password输出就能获取的这题的密码了 保存为html格式至本

每天一小步,进步一大截 729

疫情数据分析的“核武器”!JHU CSSE COVID-19数据集超深度解析与实战指南(附代码)

在面对这场没有硝烟的战争时,除了医护人员在前线与病毒搏斗,还有一群默默的英雄——数据科学家和分析师,他们利用手中的“数据武器”,昼夜不停地监测、分析、预测疫情走势,为政府决策、资源调配、公众科普提供了至关重要的支撑。同时,由于某些国家(如美国、加拿大、澳大利亚、中国等)的数据细化到省/州级别,为了得到国家层面的总数据,我们需要按国家和日期进行聚合。正是在这样的背景下,经过这些步骤,我们已经得到了一个包含了累计数据、每日新增数据和活跃病例数的完整数据集,可以开始进行深入的分析和可视化了!

wylee的博客 1164

4.3 传送门

现在有 n 个传送门,你处在第一个传送门的位置,第 i 个传送门可以将你传送到第 i-a[i] 到第 i+a[i] 范围内的任意一个传送门,请问你最少需要几次操作,使得你可以传送到最后一个传送门的位置。保证题目一定有解。

yyh520025的博客 874

Win11 C盘爆满别慌!手把手教你安全迁移AppData和用户文件夹(附一键脚本)

本文针对Win11 C盘空间不足问题,提供了一套安全有效的解决方案。通过深入解析用户目录结构,指导用户利用符号链接和Robocopy工具,将AppData、下载文档等占用大户迁移至其他分区,并附带了自动化脚本,从根本上实现C盘瘦身,同时确保系统稳定和数据安全。

weixin_29231221的博客 2086

【Unity 实用工具篇】| Unity中 实现背景模糊效果,简单易用

背景模糊 是一个很实用的功能,它可以帮助游戏在视觉上有更好的专注力和表现力。 实现模糊的种类和方式有很多种,大家自行选择适合自己的就可以了。 下面一起来看下本文实现背景模糊的效果和使用方式吧!

努力前行,总会成为自己心中的那道光 4万+

问题 C: 传送门

第二天叫醒我的不是闹钟,是梦想! 题目描述 用一个nn的矩阵表示一个岛屿,岛屿中有陆地和水域,陆地用0表示,水域用1表示,你只能在陆地上行走,在陆地上行走不需要花费任何费用,给定起点的坐标(sx,sy)与终点坐标(ex,ey),保证这两个点必定是陆地。 你可以在任意两块陆地上建立一个传送门且最多只能建一个传送门,传送门可以使两个点互达,费用是两点间横坐标、纵坐标的差的平方和,即(sx-ex)2...

qq_43690454的博客 1060

架构师成长之路(1)--什么是架构师

前言: 哲学家常思考的问题:" 我是谁?"" 我从哪里来?"" 要到哪里去?不只是哲学家,我想每个人都有自己对这三个问题的认知。 如果我们要成为架构师,我们自己要面临的三大问题: 找准自己定位:我是谁?在哪里? 怎样做好架构师:我要做什么? 如何搭建架构师知识体系:我该怎么做? 这里面就是做事方法论:目标(我要做什么),方法(计划)(我该怎么做), 执行/行动找准自己定位:我是谁?在哪里...

黄规速博客:学如逆水行舟,不进则退 6万+

拯救小Q (多传送门求最短路径问题)(bfs)

迷宫里面有一些陷阱,一旦走到陷阱里,就会被困身亡:(,迷宫里还有一些古老的传送阵,一旦走到传送阵上,会强制被传送到传送阵的另一头。小写字母'a'-'z'表示分别表示不同的传送阵,数据保证传送阵两两配对。同时我们也可以把需要的数据全开了 这里我们采用临链表的方式对 传送的存储与查找 一下是作者开的变量(可能存在冗余)每组数据输出一行,解救小Q所需的最少步数,如果无论如何都无法救小Q,输出-1。'Q'表示小Q的位置,'L'表示love8909所在位置,'.'表示安全的位置,'#'表示陷阱,

2403_87301951的博客 817

【打卡帖】7日玩转ESP32——(第4日) 串口的输入输出

【福利帖】7日玩转ESP32——(第4日) 串口的输入输出

1374

代谢组数据分析(三):代谢组降维分析

本文详细介绍了代谢组学中常用的降维分析方法,包括PCA、PLS-DA和OPLS-DA。PCA通过线性变换降低数据维度,便于数据可视化和异常值检测;PLS-DA是一种有监督的模式识别方法,适用于分类和预测;OPLS-DA通过正交分解避免过拟合,更准确地筛选差异代谢物。降维分析在揭示样本间差异和发现生物标志物方面具有重要意义

专注生信领域 3790

洛谷博客传送门

我的题解一般都发在这里qwq: https://suuuuupermb.blog.luogu.org/ 转载于:https://www.cnblogs.com/superMB/p/10308523.html

201

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【文文殿下】 Teleporters 传送器 题解

一个结论:“从出发点开始走绝对不会出现死循环”。 考虑如何证明这个结论(这会直接提示正解): 我们对数轴分段,对于任意一个传送门,把当前段分成两段。 对于每一段(除了第一段)我们总会有一个到达这个段的方法:走一个传送门。这个传送门的位置是这个段左边第一个传送门,我们查看这个传送门通向哪里,然后把那个点与这个点连一条有向边。 对于每一段(除了最后一段)我们总会有一个离开这个段的方法,和上面类似建图。...

weixin_30847939的博客 186

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

【题解】luoguP2181对角线

【题解】luoguP2181对角线

ljh736731592的博客 267

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【oSo的题解】题解:P6146 [USACO20FEB] Help Yourself G

题解:P6146 [USACO20FEB] Help Yourself G

xiaozhi_Zevin的博客 966

题解:P10892 SDOI2024

既然要纠结次数最小,也就是奇数尽量的少,那就将。处于奇数是全部减为偶数,这样纠结次数就会变少。是奇数,我们就要选择。,没有什么可纠结的。

summervacatio的博客 853

题解 | 杂题

不知道写点啥了...就随便写写了..

Averyta的博客 309

洛谷P5071 [YNOI2015]此时此刻的光辉 莫队+玄学优化+卡常QWQ

题目链接:传送门 在太阳西斜的这个世界里,置身天上之森。等这场战争结束之后,不归之人与望眼欲穿的众人, 人人本着正义之名,长存不灭的过去、逐渐消逝的未来。我回来了,纵使日薄西山,即便看不到未来,此时此刻的光辉,盼君勿忘。 珂朵莉最可爱了,珂朵莉的题最毒瘤了qwq 然而这道题…… 首先这道题显然是莫队qwq。 把质数筛出来,把每个数大莉分解质因数。 若nnn分解质因数为p1a1∗p2a2∗...

The_OIer的博客 659

CTSC 2014 随机数 题解

题目传送门 题目大意: 好像题目描述已经没法压缩了……大家看原题吧qwq 题解(废话) 这部分作者神志不清的自说自话大家跳过也无妨的qwq…… 这题做的人少的吓人,我也是听了f321dd巨佬讲课才来尝试做一做,个人觉得还是很有趣的题qwq。 话说这题网上题解似乎只有不超过 333 篇啊……像我这种菜鸡水平的人没什么题解看就很难受,所以千辛万苦过了这题来记录一下。 话说做这题的时候还有一个有趣的事儿,就是中途用瞪眼法已经再也瞪不出bug的时候,我去偷了一手Picks爷的代码对拍,结果拍出来四五个,手算之后发现

a_forever_dream的博客 398

NOI 2016 优秀的拆分 题解

题目传送门 题目大意: 给你一个字符串,计算有多少个子串可以拆分成 AABBAABBAABB 的形式,相同的子串不同的拆分要多次计算。 题解 这题前 959595 分很好水(不知道为啥难点只给了 555 分qwq),设 A[i]A[i]A[i] 表示以 iii 结尾的 AAAAAA 有多少个,B[i]B[i]B[i] 表示以 iii 开头的 AAAAAA 有多少个,那么答案就是 ∑i=1n−1A[...

a_forever_dream的博客 342

51nod 1737 配对 题解

题目传送门 题目大意: 给出一棵树,两个点配对的贡献是两点间的距离,求最大贡献和。 题解 出于某些原因来水一下这题题解,如果你是从超链接来的大概就知道原因了qwq。 思路是贪心,对于每条边,他的贡献次数为 它连接的两棵子树中 较小的子树的大小,显然这是它的最大贡献次数,需要证明的是:总是存在一种方案使得每条边的贡献次数都是最大的。下面给出一种方案: 对于一条边,要贡献满的话,就要将小的子树的点全部和大的子树的点进行配对,不妨想象一下小的子树的点全部跑到了大的子树的根节点,那么最后所有点都会汇集在树的重心,每

a_forever_dream的博客 565

P2831 [NOIP 2016 提高组] 愤怒的小鸟 题解

if(equal(a[f]*x[p]*x[p]+b[f]*x[p],y[p]))//带公式y=a*x*x+b*x;//x用来存横坐标,y用来求纵坐标,a,b分别存抛物线的参数a,b,tx,ty分别存单独的猪的横,纵坐标;

dahao_667的博客 1550

HNOI 2013 游走 题解

题目传送门 题目大意: 给出一张图,从点 111 出发乱走,走到点 nnn 停止,mmm 条边的权值为分别 111 ~ mmm,问怎样分配权值可以使得期望路程最短。 题解 一开始想到图没法 dpdpdp,是不是要缩点啥的,但是双连通分量里面好像也没法做……最后膜了一发题解才发现自己太naive了qwq 比较显然的是,我们需要求出每条边被经过的期望次数,期望越大的,让他编号越小。 但是边的期望不好求...

a_forever_dream的博客 223

P11362 [NOIP2024] 遗失的赋值 题解

接下来考虑不合法的情况,设上一个限制的值为 x ,当前限制的值为 y ,那么不合法的情况就是说从 x 开始延伸到现在的位置,而且最后的限制不在 y ,那么这种情况就有。首先(至于怎么让思维到这一步,我真不知道),可以考虑没有不合法的情况,设这个区间的长度为 x ,对于两点之间有。最后将这两个相减得到这个区间的答案,最后将每个区间的答案乘起来就行。感觉学会了dp之后就看什么都像dp了,谁能救救我qwq。种情况,那么对于这个区间就有。2.最后一个区间也要乘起来。1.开long long。

dahao_667的博客 265
上一篇: AtCoder | ARC064 | 题解
下一篇: 论逗逼的自我修养之常犯逗逼错误 | 在更
Averyta
博客等级 码龄7年 1粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值