[CF 126B] Password

news/2024/11/24 7:07:58/

代码:

KMP:

#include<bits/stdc++.h>
using namespace std;
const int N=2e6+10;
char s[N];
int nex[N];inline void kmp(){int n=strlen(s+1);int j=0;nex[1]=0;for(int i=2;i<=n;i++){while(j&&s[j+1]!=s[i]) j=nex[j];if(s[j+1]==s[i]) j++;nex[i]=j;}int maxx=-1;for(int i=2;i<=n-1;i++) maxx=max(maxx,nex[i]);j=nex[n];while(j>maxx) j=nex[j];if(!j) cout<<"Just a legend";else{for(int i=1;i<=j;i++) cout<<s[i];}
}int main(){cin>>s+1;kmp();
}

EXKMP:

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n;
int z[N];
char s[N];void exkmp(){n=strlen(s+1);int L=1,R=0;z[1]=0;for(int i=2;i<=n;i++){if(i>R) z[i]=0;else{int k=i-L+1;z[i]=min(z[k],R-i+1);}while(i+z[i]<=n&&s[z[i]+1]==s[z[i]+i]) z[i]++;if(i+z[i]-1>R) L=i,R=i+z[i]-1;}int ans=0,x=0;for(int i=1;i<=n;i++){if(i+z[i]-1==n)if(x>=z[i])ans=max(ans,z[i]);x=max(x,z[i]);}if(!ans) cout<<"Just a legend\n";elsefor(int i=1;i<=ans;i++) cout<<s[i];
}int main(){scanf("%s",s+1);exkmp();
}


http://www.ppmy.cn/news/942475.html

相关文章

cf每日一题

Codeforces Round #812 (Div. 2) &#xff08;&#x1f54a;了好久呜呜呜~&#xff09; 题目大意&#xff1a;对一个序列可以进行一次操作&#xff1a;选择两个索引 l , r &#xff0c;对 l , r 范围内的数都减一&#xff0c;然后称f(a)为将所有数删为0所需要的次数&#xff0…

腾讯云服务器续费太贵了,有什么办法解决呢?

腾讯云服务器续费太贵了,有什么办法解决呢? 腾讯云服务器续费比开新户贵太多怎么办?比如&#xff1a;去年刚买了1G2核的腾讯云器&#xff0c;一年才99元/年。到期了续费居然要1000左右一年。太贵了吧&#xff0c;才1核1G的云服务器。阿里云也是一样&#xff0c;云服务器续费…

CF c题

C. Make Equal With Mod time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given an array of nn non-negative integers a1,a2,…,ana1,a2,…,an. You can make the following operation: c…

CF-div4练习题

题目&#xff1a;Dashboard - Codeforces Round 640 (Div. 4) - CodeforcesCodeforces. Programming competitions and contests, programming communityhttps://codeforces.com/contest/1352 A&#xff1a;整数之和 题解&#xff1a; #include <bits/stdc.h>using nam…

cf交互题

链接 #include <iostream> #include <algorithm> using namespace std;const int N 1e4 10;int a[N], b[N];int main() {int n, k;scanf("%d %d", &n, &k);for(int i 1; i < n - 1; i) {printf("and %d %d\n", i, i1);fflush(s…

腾讯云买赠专区购买云服务器赠送3个月免费续费或同配置服务器!

腾讯云服务器买赠专区购买云服务器&#xff0c;可以选择免费再领一台同配置云服务器&#xff0c;也可以选择免费赠送时长&#xff0c;二选一&#xff0c;轻量应用服务器和云服务器CVM均可享受&#xff0c;买赠专区的云服务器价格要比秒杀区的价格稍微贵一些&#xff0c;但是如果…

腾讯云服务器的计费模式有哪些?新手该如何选择?

腾讯云提供三种类型的云服务器购买方式&#xff1a;包年包月、按量计费和竞价实例&#xff0c;分别适用于不同场景下的用户需求。 下表列出了三种计费模式的区别&#xff1a; 实例计费模式包年包月按量计费竞价实例付款方式预付费购买时 冻结费用&#xff0c;每小时结算购买时…

【云原生】k8s图形化管理工具之rancher

前言 在前面的k8s基础学习中&#xff0c;我们学习了各种资源的搭配运用&#xff0c;以及命令行&#xff0c;声明式文件创建。这些都是为了k8s管理员体会k8s的框架&#xff0c;内容基础。在真正的生产环境中&#xff0c;大部分的公司还是会选用图形化管理工具来管理k8s集群&…