LOJ10049_基金012498

LOJ10049_基金012498LOJ10049Trie裸题(虽然我写这SB题写了快一小时)对字符串建树的同时刷答案,有两种情况:经过了一个字符串的词尾(即过了一个标记点)一直在另一个字符串里走(没有让树长出新枝)#include<bits/stdc++.h>#definegt()(p1==p2&&(p2=(p1=buf)+fread(buf,1,1000000,std…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

LOJ10049

Trie裸题(虽然我写这SB题写了快一小时
对字符串建树的同时刷答案,有两种情况:

  • 经过了一个字符串的词尾(即过了一个标记点)

  • 一直在另一个字符串里走(没有让树长出新枝)

#include<bits/stdc++.h>
#define gt() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1000000,stdin),p1==p2)?EOF:*p1++)
#define isnum(ch) (ch>='0'&&ch<='9')
#define __R register
using namespace std;
static char buf[1000000],*p1=buf,*p2=buf;
const char Ans[2][10]={
  
  {
  
  "YES\n"},{
  
  "NO\n"}};
const int maxn=(1e5)+5,maxl=15;
int T,n,tot;int s[maxn][maxl];bool flg,id[maxn];
int read(){
    int ret=0;char ch=gt();
    while(ch<'0'||ch>'9') ch=gt();
    while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=gt();
    return ret;
}
int main(){
    T=read();
    while(T--){
        n=read(),tot=flg=0;__R char ch=gt();
        __R int rot=0,i;__R bool tag,pas;for(id[0]=i=0;i<10;i++) s[rot][i]=0;
        while(n--){
            while(!isnum(ch)) ch=gt();
            rot=tag=pas=0;
            while(isnum(ch)){
                if(!flg) if(s[rot][ch-'0']) pas=(id[rot=s[rot][ch-'0']]?1:0);else for(id[rot=s[rot][ch-'0']=++tot]=0,tag=1,i=0;i<10;i++) s[rot][i]=0;
                ch=gt();if(!isnum(ch)) id[rot]=1;
            }
            if(!tag||pas) flg=1;
        }
        fwrite(Ans[flg],1,4-flg,stdout);
    }
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186955.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL运行SQL文件时(全面,改成time):check the manual that corresponds to your MySQL server version for the righ[通俗易懂]

    MySQL运行SQL文件时(全面,改成time):check the manual that corresponds to your MySQL server version for the righ[通俗易懂]参考:Mysql错误:checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntax【加`符号、修改有冲突的字段名】checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntax错…

    2022年5月7日
    63
  • LMDB使用说明_ldd教程

    LMDB使用说明_ldd教程http://rayz0620.github.io/2015/05/25/lmdb_in_caffe/官方的extract_feature.bin很好用,但是输出的特征是放在LMDB里的。以前嫌LMDB麻烦,一直都图方便直接用ImageDataLayer来读原始图像。这次绕不过去了,就顺便研究了一下Caffe对LMDB的使用,一些心得写下来和大家分享一下。提取特征的内容下一篇再写。

    2022年9月29日
    2
  • 诺基亚S60手机c盘、d盘、e盘、z盘的作用

    诺基亚S60手机c盘、d盘、e盘、z盘的作用诺基亚S60手机c盘、d盘、e盘、z盘里文件夹的用途详细诠释
        一、【C盘】
      手机的C盘如同Windows的C盘,是用来放置SymbianOS的地方,所以我们需要给操作系统预留足够的空间(比如用来存放软件运行时生成的临时文件)。对于已扩充了MMC卡的机器,建议把应用软件和游戏都尽量安装到MMC卡上。
      手机内存和常驻内存的软件有关,如输入法、主题背景开机后就会常驻内存,正在运行的软件和游戏也会占用内存,增加动态内存的办法就是减少常驻内存的程序,用任务管理软件

    2022年7月11日
    24
  • Vue进阶之事件处理器[通俗易懂]

    Vue进阶之事件处理器

    2022年2月24日
    43
  • php中while没有大括号[通俗易懂]

    php中while没有大括号

    2022年2月11日
    44
  • Oracle基础–PL/SQL编程基本语法[通俗易懂]

    Oracle基础–PL/SQL编程基本语法[通俗易懂]一、概念什么是PL/SQL?1.PL/SQL(ProcedureLanguage/SQL)2.PLSQL是Oracle对sql语言的过程化扩展(类似于Basic)3.指在SQL命令语言中增加了过程处理语句(如分支、循环等),使SQL语言具有过程处理能力。二、程序结构通过plsqlDeveloper工具的TestWindow创建程序模版。1.PL/SQL可以分为三个部分:声明部分、可执行部分、异常处理部分。声明部分:此部分是以关键字DECLARE开…

    2022年10月11日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号