3036: 莫比乌斯最大值isUsefulAlgorithm(2023郑州轻工业大学校赛

news/2024/5/3 12:19:36/文章来源:https://blog.csdn.net/qq_61903556/article/details/129934137

(SWC85VE8F6{_Y4AH8395{3

题意:

有n个问题和闲聊

问题的格式是’what’s +S问题S_{问题}S问题

闲聊的格式是 S问题S_{问题}S问题+S回答S_{回答}S回答S问题S_{问题}S问题的长度>=0

对于每个 S回答S_{回答}S回答 ,只能回答在这句话之前提问的问题

那么求最多能回答几个不同的问题

思路:

对于每个回答,他的每个前缀都可能是一个出现过的问题

那么我们对于一个回答,让他贪心的回答出现过的前缀最长的问题

因为对于一个回答,如果他的长度长,可以回答长度长的问题和长度短的问题,如果他的长度短的话就只能回答长度短的问题,所以我们优先让他回答没有回答过的长度最长的问题

用umap来记录一个问题是否出现过,以及是否被回答过。

注意:

加了ios::sync_with_stdio(false)就不能用getchar(),需要用cin.get()

对于map的每次询问都是插入,如果对于每出现过的map,需要先判断是否出现过载判断值,可以节省时间防止tle

#include<bits/stdc++.h>
using namespace std;
const int N=4e6+10;
int idx,n;int main(){ios::sync_with_stdio(false);cin.tie(),cout.tie();cin>>n;cin.get();//加了ios不能用getcharunordered_map<string,int> chuxian;//记录是否被回答过,如果等于0就是没有unordered_map<string,int> huida;int con=0;for(int i=1;i<=n;i++){string s;cin>>s;if(s=="what's"){cin>>s;chuxian[s]=1;}else{string op;int id=-1;string ans;for(int i=0;i<s.size();i++){op+=s[i];if(chuxian.count(op)&&chuxian[op]==1&&huida.count(op)==0){id=i;ans=op;}}if(id!=-1){huida[ans]=1;con++;}}}cout<<con;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_283068.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

线程池ThreadPoolExecutor原理

文章目录线程池ThreadPoolExecutor原理核心参数如何设置核心线程数和最大线程数线程空闲时间阻塞队列设置线程池的五种状态原理执行流程拒绝策略线程淘汰机制线程池ThreadPoolExecutor原理 核心参数如何设置 核心线程数和最大线程数 线程池中线程数量我们一般要区分任务的类…

操作技巧 | Revit中如何新建系统类型并赋予颜色?

大家好&#xff0c;这里是行走的安利机---建模助手。 新建系统后&#xff0c;把材质赋予系统&#xff0c;以做出不同颜色的管道和风管系统&#xff0c;那么&#xff1a;Revit中如何新建系统类型并赋予颜色呢&#xff1f; 下面小编说下解决方案。 REVIT 具体解决办法如下 正…

携多款产品亮相“深圳先进制造业集群展”,华秋积极探索发展机遇

4月7日&#xff0c;在深圳市工业和信息化局指导下&#xff0c;由深圳先进技术研究院作为总促进机构的深圳市新一代信息通信产业集群于第十一届中国电子信息博览会&#xff08;CITE2023&#xff09;期间举办 “深圳先进制造业集群展”。 本次先进制造业集群展以“科技带动产业创…

设计干货:PCB为什么要拼版?PCB拼版的适用方式分享

PCB为什么要拼版&#xff1f; 拼版主要是为了满足 生产的需求 &#xff0c;有些PCB板太小&#xff0c;不满足做夹具的要求&#xff0c;所以需要拼在一起进行生产。 拼版也可以提高SMT贴片的 焊接效率 &#xff0c;如只需要过一次SMT&#xff0c;即可完成多块PCB的焊接。 同时…

FPGA纯verilog实现UDP通信,三速网自协商仲裁,动态ARP和Ping功能,提供工程源码和技术支持

目录1、前言2、我这里已有的UDP方案3、UDP详细设计方案MAC层发送MAC发送模式ARP发送IP层发送IP发送模式UDP发送MAC层接收ARP接收IP层接收UDP接收SMI读写控制SMI配置10/100/1000M仲裁ICMP应答 (ping)ARP缓存CRC校验以太网测试模块RGMII转GMII模块4、vivado工程详解5、上板调试验…

《大众金融》企业级开发实战

目录 主要内容 1 配置中心简介 1.1 什么是配置 1.2 传统配置形式存在的问题 1.3 配置中心的作用 2 Apollo简介 2.3 Apollo特性 2.4 产品对比 2.5 Apollo初体验 2.5.1 访问控制台 应用配置中心Apollo-讲义 主要内容 1&#xff09;了解配置中心的概念以及使用场景 2&…

单元测试系列 | 如何更好地测试依赖外部接口的方法

背景 在现在这个微服务时代&#xff0c;我们项目中经常都会遇到很多业务逻辑是依赖其他服务或者第三方接口。工作中各位同学对于这类型场景的测试方式也是五花八门&#xff0c;有些是直接构建一个外部mock服务&#xff0c;返回一些固定的response;有些是单元测试都不写&#x…

Linux复习 / 命令与权限部分QA梳理

文章目录前言Q&AshellQ&#xff1a;什么是shell&#xff1f;Q&#xff1a;shell的作用&#xff1f;Q&#xff1a;为什么要有shell&#xff1f;Q&#xff1a;shell的生命周期多长&#xff1f;Q&#xff1a;shell的原理/实现是怎样的&#xff1f;Q&#xff1a;为什么会有内建…

Scrum Master 应该采取哪些措施来提高团队效率?

项目经理应该从这5方面提高团队的开发效率 1、目标明确有时间节点 提高团队开发效率&#xff0c;最重要的是明确目标与期限。制定SMART目标&#xff0c;明确告知成员要实现什么&#xff0c;输出什么&#xff0c;标准以及时限等&#xff0c;需要考虑目标的可达成性和目标与项目的…

【牛客刷题专栏】0x17:JZ17打印从1到最大的n位数(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转)&#xff0c;它登陆后会保存刷题记录进度&#xff0c;重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏&#xff1a;个人CSDN牛客刷题专栏。 题目来自&#xff1a;牛客/题库 / 在线编程 / 剑指offer&#xff1a; 目录前言问题…

Java初阶(异常)

文章目录一、异常的结构体系二、异常的处理2.1 防御式编程2.2 异常的抛出2.4 异常的捕获&#xff08;异常的具体处理方式&#xff09;&#xff08;1&#xff09;异常声明 throws&#xff08;2&#xff09; 捕获处理 try-catch2.4 异常的处理流程三、自定义异常类一、异常的结构…

go学习线路图

1. go学习线路图 1.1.2. 资源 先决条件 GoSQL 通用开发技能 学习 GIT&#xff0c;在 GitHub 上建立一些仓库&#xff0c;与其它人分享你的代码了解 HTTP(S) 协议&#xff0c;request 方法&#xff08;GET, POST, PUT, PATCH, DELETE, OPTIONS&#xff09;不要害怕使用 Google&a…

和数软件荣获上海市“专精特新”企业荣誉认定

近日&#xff0c;上海市经济和信息化委员会公示了2022年上海市“专精特新”企业名单。根据《关于组织开展2022年创新型中小企业评价、专精特新中小企业认定和复核工作的通知》&#xff08;沪经信企〔2022〕776号&#xff09;&#xff0c;经专家评审和综合评估&#xff0c;上海和…

学会吊打面试官之map

小白&#xff1a;大牛&#xff0c;我最近学习了一些C的STL容器&#xff0c;但是我还是有一些疑惑&#xff0c;特别是对于map&#xff0c;我不太理解它的底层实现和具体用法。能否跟我讲一下&#xff1f; 大牛&#xff1a;当然可以啊&#xff0c;map是一种非常常用的关联式容器…

小企业选择什么样的CRM系统比较合适,有什么特点?

CRM客户管理系统已经成为各种规模的企业&#xff0c;特别是小型企业的重要工具。CRM系统帮助小型企业更有效地管理客户数据和互动&#xff0c;简化销售流程&#xff0c;并提高客户满意度。市场上有如此多的选择&#xff0c;小企业该如何选择合适的CRM系统&#xff1f; 什么是C…

深圳CPDA|如何着手商业数据分析?

商业数据分析是一项非常重要的工作&#xff0c;可以帮助企业做出更明智的决策。 下面是一些着手商业数据分析的步骤&#xff1a; 1.确定你的问题 首先需要明确你想要解决什么问题。 这通常需要与业务团队沟通&#xff0c;以便了解他们正在寻找哪些信息。 2.收集数据 收集数…

linux语言学习记录

文章目录前言一、linux文件结构二、指令三、Gvim编辑器1、命令模式2、底行命令四、正则表达式1、表达式匹配举例2、对文件里面内容进行操作3、使用 \( 和 )\ 符号括起正规表达式&#xff0c;即可在后面使用\1和\2等变量来访问和中的内容前言 记录自己学习linux的笔记&#xff…

IFPUG功能点度量5:计算功能规模

功能点计数类型&#xff1a;开发项目、升级项目、应用 一、 三种功能能规模计算&#xff1a; 1、开发项目计算 DFP&#xff08;开发项目功能规模&#xff09;ADD&#xff08;交付用户的功能规模&#xff09;CFP&#xff08;转换功能的功能规模&#xff09; 2、升级项目计算 …

【代码笔记】Pytorch学习 DataLoader模块详解

Pytorch DataLoader模块详解dataloader整体结构DataLoaderinit 初始化参数解释代码解析IterableDataset 判断构建Sampler&#xff0c;单样本构建BatchSampler&#xff0c;组建batch构建collate_fn 对获取的batch进行处理其他的一些逻辑判断_get_iterator代码解析multiprocessin…

【Python】轻松掌握基础语法(一)

文章目录常量和表达式变量和类型变量的定义变量的使用变量的类型intfloatstrbool动态类型注释输入和输出输出输入运算符算数运算符关系运算符逻辑运算符赋值运算符其他常量和表达式 print(1 2 * 3)print是Python内置的一个函数&#xff0c;作用为输入打印到控制台形如1 2 * …