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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • iOS Dev (59) 高度自适应的UITextView

    iOS Dev (59) 高度自适应的UITextView

    2022年1月18日
    42
  • 8421 BCD码 加减校正[通俗易懂]

    8421 BCD码 加减校正[通俗易懂]8421码是一种常见的BCD(Binary-CodedDecimal)码,它用4个二进制位表示1个十进制位:00000001001000110100010101100111100010011010…11110123456789x…x例如:我们要表示5和15,使用二进制编码5 -101 15 -1111…

    2025年7月5日
    5
  • rpm卸载安装包「建议收藏」

    rpm卸载安装包「建议收藏」rpm卸载安装包之rpm-qa|grep-invid|sort目标首先本人是想要卸载通过下面命令查询到的安装包rpm-qa|grep-invid|sort找到两个文件但是由于想卸载(base)[root@localhostname]#rpm-qa|grep-invid|sortnvidia-detect-510.47.03-1.el7.elrepo.x86_64nvidia-driver-local-repo-rhel7-510.47.03-1.0-1.x86_

    2022年9月22日
    2
  • VMware虚拟机安装Win10教程

    VMware虚拟机安装Win10教程VMware虚拟机安装Win10教程1.打开VMwareWorkstation软件,点击创建新的虚拟机2.选择好要安装的镜像文件,点击打开3.点击浏览更换虚拟机位置4.这里建议的磁盘大小为60G,可以根据自己的实际需要更改磁盘大小5.点击自定义硬件,这里可以根据需要更改配置6.更改完成后点击关闭7.安装完成后,打开系统会出现如图所示timeout8.点击上边的关机9.将固件类型更改为BIOS10.为设备选择隐私设置,可视情况更改,然后点击接受

    2022年6月29日
    54
  • poe交换机百度百科_交换机带poe什么意思

    poe交换机百度百科_交换机带poe什么意思文章目录前言一、POE交换机与普通交换机的区别二、POE系统的组成三、POE交换机输出电压和功率四、POE系统的四种连接方法五、POE交换机供电距离六、提示1.网线2.不选非标POE3.不用假POE终端设备前言POE(PowerOverEthernet)指的是在现有的以太网Cat.5布线基础架构不作任何改动的情况下,在为一些基于IP的终端(如IP电话机、无线局域网接入点AP、网络摄像机等)传输数据信号的同时,还能为此类设备提供直流电的技术,就是支持以太网供电的交换机。提示:以下是本篇文章正

    2022年10月4日
    3
  • php源码 辅助发卡_【程序源码】PHP自动化售货发卡网源码

    php源码 辅助发卡_【程序源码】PHP自动化售货发卡网源码GitHub:https://github.com/assimon/dujiaoka安装教程:https://github.com/assimon/dujiaoka/blob/master/wikis/bt_install.md支付接口已集成支付宝当面付支付宝PC支付支付宝手机支付payjs微信扫码.Paysapi(支付宝/微信).码支付(QQ/支付宝/微信)微信企业扫码支付全网易支付支持(针对彩…

    2022年7月16日
    22

发表回复

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

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