首页 > 其他分享 >存代码

存代码

时间:2023-12-12 16:44:06浏览次数:23  
标签:cnt ch const int 代码 namespace inline

[USACO17OPEN] Bovine Genomics G

#include<bits/stdc++.h>
#define int long long
#define maxm 0X66CCFF
#define N 510
namespace IO{
    inline void close(){std::ios::sync_with_stdio(false);std::cin.tie(nullptr);}
    inline void Fire(){freopen(".in","r",stdin);freopen(".out","w",stdout);}
    inline int read(){int s = 0,w = 1;char ch = getchar();while(ch<'0'||ch>'9'){ if(ch == '-') w = -1;ch = getchar();}while(ch>='0'&&ch<='9'){ s=(s<<3)+(s<<1)+ch-'0';ch = getchar();}return s*w;}
    inline void write(int x){char F[200];int tmp=x>0?x:-x,cnt=0;;if(x<0)putchar('-') ;while(tmp>0){F[cnt++]=tmp%10+'0';tmp/=10;}if(cnt==0)putchar('0');while(cnt>0)putchar(F[--cnt]);putchar(' ');}
}
using namespace IO;
using namespace std;
const int P1=315716251,P2=475262633;
int a,b;
struct Hash{
    int h1[N],h2[N],z1[N],z2[N];
    inline void Init(const char *s){
        int n=strlen(s+1);
        const int b=131;
        z1[0]=z2[0]=1;
        for(register int i=1;i<=n;i++){
            z1[i]=z1[i-1]*b%P1;
            z2[i]=z2[i-1]*b%P2;
            h1[i]=(h1[i-1]*b+(s[i]-'A'+1%P1))%P1;
            h2[i]=(h2[i-1]*b+(s[i]-'A'+1%P2))%P2;
        }
    }
    inline int Get1(int l,int r){
        return (h1[r]-h1[l-1]*z1[r-l+1]%P1+P1)%P1;
    }
    inline int Get2(int l,int r){
        return (h2[r]-h2[l-1]*z2[r-l+1]%P2+P2)%P2;
    }
}aaa[N],bbb[N];
map<long long,bool> mp1,mp2;
inline bool Check(int n){
    for(register int i=n;i<=b;++i){
        bool f=1;
        mp1.clear(),mp2.clear();
        for(register int j=1;j<=a;++j){
            mp1[aaa[j].Get1(i-n+1,i)]=true;
            mp2[aaa[j].Get1(i-n+1,i)]=true;
        }
        for(register int j=1;j<=a;++j){
            if(mp1[bbb[j].Get1(i-n+1,i)]) f=0;
            if(mp2[bbb[j].Get1(i-n+1,i)]) f=0;
        }
        if(f) return true;
    }
    return false;
}
char aa[510][510];
char bb[510][510];
signed main(){
    #ifndef ONLINE_JUDGE
    freopen("1.in","r",stdin);
    freopen("1.out","w",stdout);
    #endif
    a=read(),b=read();
    for(register int i(1);i<=a;++i){
        scanf("%s",aa[i]+1);
        aaa[i].Init(aa[i]);
    }
    for(register int i(1);i<=a;++i){
        scanf("%s",bb[i]+1);
        bbb[i].Init(bb[i]);
    }
    int l(1),r(b);
    while(l<r){
        int mid((l+r)>>1);
        if(Check(mid))r=mid;
		else l=mid+1;
    }
    write(l);
}

标签:cnt,ch,const,int,代码,namespace,inline
From: https://www.cnblogs.com/LuoTianYi66ccff/p/17897262.html

相关文章

  • shell脚本模板-从git拉取代码并打包部署
    source/etc/profile.~/.bash_profile#拉取能耗后端代码cd/usr/local/testmvncleanecho-e"从git华为云拉取后端代码"#首次clonegitpulltest.gitecho-e"从git华为云代码拉取完成"#工程打包echo-e"开始打jar包"mvnpackage-Dmaven.test.skip=true#删除原来的jar包rm......
  • Amazon CodeWhisperer 审查:最新的 AI 代码伴侣
    最近,亚马逊云科技宣布了一项机器学习支持的服务,该服务通过根据开发人员在自然语言中的评论和他们在集成开发环境中的代码生成代码建议来帮助提高开发人员的工作效率。这项名为AmazonCodeWhisprer 的服务仍处于预览阶段,可以免费使用。这项服务类似于微软去年推出的GitHubcopi......
  • 多线程爬虫抓取京东运行流程-大公司抢着要代码
    之前有个大公司找我,需要爬取京东有关行业商家的价格信息做对比,方便后期自己的产品定位以及舆情监控,让我写一个通用的爬虫模版,方便他们那边技术调整修改,于是带着这样的问题,我给了他们一些几点建议。首先,你需要安装必要的库,包括HTTP库、JSON库、爬虫库、代理库和可视化库。可以使......
  • 代码管
    importturtle,datetime#定义一个,用于绘制代码管的间隙defdraw_gap():turtle.penup()turtle.forward(5)#定义一个函数,用于绘制一段代码管,这里传入的参数输一个bool类型defdraw_line(draw):draw_gap()turtle.pendown()ifdrawelseturtle.penu......
  • 《重构:改善既有代码的设计》读书笔记一
    一、重构原则1、重构定义重构:对软件内部结构的一种调整。目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。2、为何重构在开始说为何重构之前,先说一下很多程序员为何不喜欢重构。时间紧,一直忙着实现功能,觉得重构影响效率,而且重构不算绩效,简直吃力不讨好......
  • CPU调度器实现提示:针对特定体系结构代码【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/scheduler/sched-arch.html《CPU调度器实现提示:针对特定体系结构代码》NickPiggin,2005上下文切换运行队列锁定默认情况下,调用switch_to体系结构函数时会锁定运行队列。除非switch_to需要获取运行队列锁,否则通常不会出现问题。这通......
  • 粉碎文件代码 python
    粉碎文件是指将文件彻底删除,使其无法恢复。在计算机领域,我们通常使用编程语言来实现该功能。本文将介绍如何使用Python编程语言来粉碎文件,并提供相应的代码示例。什么是文件粉碎?在计算机中,当我们删除一个文件时,实际上只是将该文件从文件系统的文件目录中删除,并不是真正地将文件内......
  • 出生率持续下降,而低代码,成了!
    低代码这个概念在IT界应该是火了很久,在十年前就有低代码的概念。在最初的时候,我们都是用高级语言或者脚本来开发页面或者应用,比如Java、C++,前端会使用Vue、React等等。但是我们发现经常写的功能或者页面都是重复的,那能否通过更简单高效的方式来避免每次都是重头开发呢?当时业内人士......
  • 【虹科干货】触发器和函数:让代码更接近数据
    文章速览:触发器和函数的基础知识编写语言:从Lua到JavaScript轻松维护应用程序代码数据库事件实时处理如何操作触发器和函数一般来说,应用程序处理业务的逻辑,是将执行代码发送到数据库。因此每次执行函数时,代码都会从客户端流入服务器,结果就是这个过程十分缓慢,甚至会出现代码......
  • idea代码提示插件codota和aixcoder
    idea代码提示插件codota和aixcoder两个插件用了10分钟,毫不犹豫用了aixcoder,aixcoder会在本地安装程序学习我们的代码喜欢进行提示;codota在使用的时候,基本没大有感觉,不知道是不是用的时间太短,基本没有提示,偶尔的一点点提示idea都提示了,而且同样的代码我编写2次也没;aixc......