当前位置: 首页 > news >正文

P1481 魔族密码

P1481 魔族密码 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

字典树

在插入字符串 s s s时,不断记录 s 0... k s_{0...k} s0...k的个数取最大即可。

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 21;
int cnt[N], tr[N][30], idx,ma;
void insert(string s) {int u = 0, res = 0;for(auto &t: s) {int p = t - 'a';if(!tr[u][p]) tr[u][p] = ++idx;u = tr[u][p];// 加上当前结点的所有字符串res += cnt[u];}cnt[u]++;res++; // 加上当前字符串ma = max(res, ma);
}
int main()
{int n; cin>>n;for(int i = 0; i < n; ++i) {string s; cin>>s;insert(s);}cout<<ma;
}

最长不下降序列(LIS)

套LIS模板,对字符串 s i s_i si s j s_j sj来说,两者存在从字符串头开始的字串即可更新最值

#include <bits/stdc++.h>
using namespace std;
int main()
{int n; cin>>n;vector<int> f(n + 1);vector<string> vs(n + 1);for(int i = 1; i <= n; ++i) cin>>vs[i];for(int i = 1; i <= n; ++i) {f[i] = 1;for(int j = 1; j < i; ++j) {if(vs[j].substr(0, vs[i].size()) == vs[i] || vs[i].substr(0, vs[j].size()) == vs[j] ) f[i] = max(f[i], f[j] + 1);}}cout<<*max_element(f.begin(), f.end());
}
http://www.lryc.cn/news/322685.html

相关文章:

  • 无人机/飞控--ArduPilot、PX4学习记录(2)
  • 【Arxml专题】-29-使用Cantools将CAN Matrix Arxml自动生成C语言代码
  • 【id:21】【20分】E. 抄袭查找(结构体+指针+函数)
  • ASP.NET-常用控件总结
  • SpringBoot3整合Mybatis-Plus与PageHelper包冲突解决
  • MQTT Keep Alive机制
  • 基于springboot+vue的游戏交易系统
  • 高职(大专)结构化面试之答题思路
  • Python基础学习笔记(一)
  • 机器学习-可解释性机器学习:支持向量机与fastshap的可视化模型解析
  • 32.768K晶振X1A000141000300适用于无人驾驶汽车电子设备
  • 利用autodl服务器跑模型
  • 【微服务】分布式调度框架PowerJob使用详解
  • 一命通关广度优先遍历
  • 力扣4寻找两个正序数组的中位数
  • jmeter之常用函数-第六天
  • 原创!分解+集成思想新模型!VMD-CNN-BiGRU-Attention一键实现时间序列预测!以风速数据集为例
  • ab (Apache benchmark) - 压力/性能测试工具
  • 除了Confluence,有没有其他工具一样好用?
  • 查询表中数据(全列/特定列/表达式,where子句(比较/逻辑运算符),order by子句,limit筛选分页),mysql执行顺序
  • 【Linux】多线程概念 | POSIX线程库
  • Java Spring AOP代码3分钟快速入手
  • .NET开源快速、强大、免费的电子表格组件
  • docker一键部署若依前后端分离版本
  • Java项目开发之fastjson详解
  • 面试算法-62-盛最多水的容器
  • 【智能算法】海洋捕食者算法(MPA)原理及实现
  • 刷题DAY24 | LeetCode 77-组合
  • Spring Boot为什么默认使用CGLIB动态代理
  • 算法详解——Dijkstra算法