【数据结构 | PTA】懂蛇语

【团体程序设计天梯赛】L2-50 懂蛇语 模拟、字符串处理 阅读详情
AI摘要

博客围绕蛇语自动翻译工具展开,介绍了《一年一度喜剧大赛》中“蛇语”规则,即提取句子首字母替换为对应首字母相同的另一句话。还给出了该工具输入输出格式要求,如输入词典句子个数、查询次数等,输出对应句子或原样输出查不到的句子。

懂蛇语

在《一年一度喜剧大赛》第二季中有一部作品叫《警察和我之蛇我其谁》,其中“毒蛇帮”内部用了一种加密语言,称为“蛇语”。蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。例如二当家说“九点下班哈”,对应首字母缩写是 JDXBH,他们解释为实际想说的是“京东新百货”……
本题就请你写一个蛇语的自动翻译工具,将输入的蛇语转换为实际要表达的句子。

输入格式:
输入第一行给出一个正整数 N(≤10的5次方),为蛇语词典中句子的个数。随后 N 行,每行用汉语拼音给出一句话。每句话由小写英文字母和空格组成,每个字的拼音由不超过 6 个小写英文字母组成,两个字的拼音之间用空格分隔。题目保证每句话总长度不超过 50 个字符,用回车结尾。注意:回车不算句中字符。

随后在一行中给出一个正整数 M(≤10的3次方),为查询次数。后面跟 M 行,每行用汉语拼音给出需要查询的一句话,格式同上。

输出格式:
对每一句查询,在一行中输出其对应的句子。如果句子不唯一,则按整句的字母序输出,句子间用 | 分隔。如果查不到,则将输入的句子原样输出。

注意:输出句子时,必须保持句中所有字符不变,包括空格。

输入样例:

8
yong yuan de shen
yong yuan de she
jing dong xin bai huo
she yu wo ye hui shuo yi dian dian
liang wei bu yao chong dong
yi  dian dian
ni hui shuo she yu a
yong yuan de sha
7
jiu dian xia ban ha
shao ye wu ya he shui you dian duo
liu wan bu yao ci dao
ni hai shi su yan a
yao diao deng
sha ye ting bu jian
y y d s

输出样例:

jing dong xin bai huo
she yu wo ye hui shuo yi dian dian
liang wei bu yao chong dong
ni hui shuo she yu a
yi  dian dian
sha ye ting bu jian
yong yuan de sha|yong yuan de she|yong yuan de shen

#include<bits/stdc++.h>
#include<iostream>
#include<map>
#include<vector>
#include<set>
#include<string>
#include<sstream>
using namespace std;
map<vector<char>,multiset<string>> ma;
int main()
{
    int N;
    cin>>N;
    getchar();
    for(int i=0;i<N;i++)
    {
        vector<char> v;
        string str,str1;
        getline(cin,str);
        str1=str;
        stringstream s(str);
        while(s>>str)
        {
            char c=str[0];
            v.push_back(c);
        }
        ma[v].insert(str1);
    }
    int k;
    cin>>k;
    getchar();
    for(int i=0;i<k;i++)
    {
        vector<char> v;
        string str,str1;
        getline(cin,str);
        str1=str;
        stringstream s(str);
        while(s>>str)
        {
            char c=str[0];
            v.push_back(c);
        }
        if(ma.find(v)==ma.end())
            cout<<str1<<endl;
        else
        {
            bool pl=false;
            for(auto it:ma[v])
            {
                if(pl) cout<<'|';
                cout<<it;
                pl=true;
            }
            cout<<endl;
        }
    }
    return 0;
}
2024团体程序设计天梯赛 L2-2 懂蛇语 题目如下:在《一年一度喜剧大赛》第二季中有一部作品叫《警察和我之蛇我其谁》,其中“毒蛇帮”内部用了一种加密语言,称为“蛇语”。蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。例如二当家说“九点下班哈”,对应首字母缩写是JDXBH,他们解释为实际想说的是“京东新百货”……本题就请你写一个蛇语的自动翻译工具,将输入的蛇语转换为实际要表达的句子。 阅读详情

相关推荐

TNS-12516及ORA-12516错误解决

在客户端进行sqlplus连接报错如下: ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序 在/home/oracle/product/10.2.0/db_1/network/log/listener.log中查看到错误如下: TNS-12516: TNS:listener could not find available handler with matchin

KEL 2万+

L2-050 懂蛇语(c++语言超简单用自带库函数)

这题的思路就是,帮刚开始存入的字符串提取出每一个单词的第一个字母 然后在组成一个字符串,用来当作mapsnake中的string中的map键值 而本身的字符串就存入string类型的vector容器中,作为map的值 然后把后面有一样的以开头组成的字符串 也存入string类型的vector容器中 这个时候里面就有2个及其以上的字符串 然后在查询的时候,相同操作,提取单词第一个字符组成的字符串 在map键值里面找,如果没有就输出这个查找的字符串

tuse101的博客 2040

Win10安装Nek5000

1 安装wsl 2 2 安装Nek5000 3 安装依赖项 4 安装openmpi 5 配置Nek5000 6 编译Nek5000 7 运行Nek5000算例 8 安装paraview并查看结果

weixin_43176703的博客 3451

每日一题(PTAL2-050):懂蛇语-模拟

1 使用getchar();去除换行符,不然会读取错误。3 while(ss>>a) 可读取其中的每一个单词。2 map本身由红黑树构造,本身key值具有顺序。

m0_75015083的博客 1081

自抗扰(ADRC)控制原理及控制器设计

自抗扰控制原理以及控制器设计

weixin_43487974的博客 3万+

APO的全面进化之路(2):走向IBP、建设端到端供应链计划体系

前一篇记录阐述了在供应链计划(Supply Chain Planning)领域里SAP的关键产品APO的不断进化之路,即部分产品从APO进化到S/4HANA,本篇将继续阐述进化之路上的另一大中坚产品力量SAP-IBP(Integrated Business Planning)。作为SAP数字化供应链(Digital Supply Chain)中供应链计划SCP的左膀右臂,S/4HANA与IBP共同完善了计划域的完整闭环。本篇作为收尾,在先谈对IBP产品的个人认知之前,特别是在当今这个IT产品迭代多、技术革新

ChampaignWolf的专栏 5229

L2-050 懂蛇语(2024PTA天梯赛)

核心在于用map储存 尤其是map的值用vector来储存多个字符串s。前置知识: [[字符串流式处理#字符串分割]]

u012137663的博客 1282

华北理工大学以升实验班蓝桥杯选拔赛题解

文章目录华北理工大学以升实验班蓝桥杯选拔赛题解A:期末考试题目描述题目讲解代码B:月份题目描述题目讲解代码C:打饭题目描述题目讲解代码D : 正弦波信号题目描述题目讲解代码E : 亲爱的长方形题目描述题目讲解代码F:挖金子题目描述题目讲解代码G : 金金的游戏题目描述题目讲解代码H : 区间和题目描述题目讲解代码详细视频讲解请关注华北理工大学b站账号。 华北理工大学以升实验班蓝桥杯选拔赛题解 A:期末考试 题目描述 Description 期末考试过去许多天了,如今成绩都出来了,那么现在让我们对成绩我分个类

Qq1739206233的博客 1127

PTA练习-懂蛇语、堆宝塔

cin >> n;string kkk;i <= n;b[i] = s;string ss;if (ss!cin >> m;string s;= "")

像污秽一样的博客 993

大数据之数据抽取架构演变过程

而当时我们搭建的Flink集群是基于YARN进行资源管理和调度的,因为YARN中不仅仅包含着FLInk的资源,也有hive,zoozie,hdfs等等的资源,这样容易造成yarn资源的过度使用,容易引起整个底座的cpu以及内存的使用问题,经过排查,主要是由于FLink的使用资源引起的,所以后续就把Flink从整个集群中剥离出来,进行资源的隔离,最后Flink采用了StandAlone HA部署(但是这个目前还是存在问题,后续根据项目进行优化)'topic' = '表名',二、数据抽取架构的演变。

天道酬勤 867

Anylabeling与SAM协同:从智能标注到YOLO数据集构建的完整实践

本文详细介绍了Anylabeling与SAM协同标注的完整实践,从智能标注到YOLO数据集构建的全流程。通过结合SAM的自动分割能力和Anylabeling的交互式标注,显著提升标注效率,特别适合小样本、复杂形状和多类别标注场景。文章还提供了环境搭建、标注优化技巧以及YOLO格式转换的实用指南。

weixin_26873711的博客 461

第19届PTA天梯赛——懂蛇语

传给它一个strng类型,然后while循环(s>>string)这时,我们发现string每次都是获得原字符串以空格 (不论原字符串多少个空格连在一起,都是按照空格将字符串分割)分隔的一部分。这道题,要是会sstream下的stringstream的话,处理起来比较简单,前期获得每个拼音首字母的时候会省很多力,不会也能做,无非就是代码多一点,多浪费时间一些。我看情况,有空我就整理了放在之后的博客里面。之后我们去遍历测试数据,只要map找到了,我就输出对应的multiset,如果有多个,需要用|隔开。

qq_63125992的博客 1341

23、工业物流中的多智能体路径规划与碰撞处理策略

本文探讨了工业4.0背景下工业物流中的多智能体路径规划(MAPF)与碰撞处理策略。分析了自动导引车(AGV)等移动资源的应用现状,综述了主流路径规划算法如A*、D*Lite、M*等,以及集中式与分布式碰撞检测方法。重点比较了五种碰撞避免策略:路径交叉、优先级、起始时间调整、无交叉路径和速度调整,提出了基于环境条件的策略选择流程,并通过流程图展示了评估、组合、测试与优化的全过程。文章强调应根据订单不确定性、时间约束、优先级和生产组织等因素综合选择或组合策略,以提升物流效率与系统可靠性。

mac99的博客 125

L2-050 懂蛇语(团体程序设计天梯赛)

在《一年一度喜剧大赛》第二季中有一部作品叫《警察和我之蛇我其谁》,其中“毒蛇帮”内部用了一种加密语言,称为“蛇语”。蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。例如二当家说“九点下班哈”,对应首字母缩写是JDXBH,他们解释为实际想说的是“京东新百货”……本题就请你写一个蛇语的自动翻译工具,将输入的蛇语转换为实际要表达的句子。

a13997460860的博客 1467

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

2024pta天梯赛c++题解

​。

2301_81019360的博客 5481

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

天梯赛pta L2题解(全)

L2-006 树的遍历。

weiweiwei0011646的博客 1261

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

2024团体程序设计天梯赛 L1-1~L3-1 AC代码

2024团体程序设计天梯赛;天梯赛;天梯赛2024;第九届GPLT团体程序设计;天梯赛2024年;L1-1编程解决一切; L1-2再进去几个人; L1-3帮助色盲; L1-4四项全能; L1-5别再来这么多猫娘了!; L1-6兰州牛肉面; L1-7整数的持续性; L1-8九宫格; L2-1鱼与熊掌; L2-2懂蛇语; L2-3满树的遍历; L2-4吉利矩阵; L3-1 夺宝大赛

2301_80278604的博客 2955

猜数字

输入格式: 输入在第一行给出一个正整数N(≤10 ​4 ​​ )。随后 N 行,每行给出一个玩家的名字(由不超过8个英文字母组成的字符串)和其猜的正整数(≤ 100)。 输出格式: 在一行中顺序输出:大家平均数的一半(只输出整数部分)、赢家的名字,其间以空格分隔。题目保证赢家是唯一的。 输入样例: 7 Bob 35 Amy 28 James 98 Alice 11 Jack 45 Smith 33 Chris 62 输出样例: 22 Amy #include<bits/stdc++.h> usi

qq_54602710的博客 341

hi.鱼与熊掌

孟子 · 告子上》有名言:“鱼,我所欲也,熊掌,亦我所欲也;二者不可得兼,舍鱼而取熊掌者也。”但这世界上还是有一些人可以做到鱼与熊掌兼得的。给定n个人对m种物品的拥有关系。对其中任意一对物品种类(例如“鱼与熊掌”),请你统计有多少人能够兼得?

Pretty Boy Fox的博客 1235

输入格式: 输入在第一行给出一个正整数 n(≤10)。随后 n 行,每行通过两个 0 或 1 来描述实际状态。 第 1 个数字为 0 对应“不测”,为 1 对应“测一下”。 第 2 个数字为 0 对...

输入格式: 第一行给出一个正整数 n(≤10)。 接下来的 n 行,每行包含两个由 0 或 1 组成的数字,分别表示测试结果和新冠病毒状态。 输出格式: 对于每个状态,在一行中输出根据输入得出的结论编号。 示例: 输入: 3 1 0 1 1 0 0 输出: 3 4 1 简要说明: 对于第一组数据,测试结果为 1,新冠病毒状态为 0,因此输出 3。 对于第二组数据,测试结果为 1,新冠病毒状态为 1...

weixin_35749786的博客 2195

第九届团体程序设计天梯赛

蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。所有元素为非负整数,且各行各列的元素和都等于 7 的 3×3 方阵称为“吉利矩阵”,因为这样的矩阵一共有 666 种。首先判断每个非叶子节点,即存在后继结点的节点的后继结点的数量,判断是否为k阶满树;注:树中结点的度是其拥有的子树的个数,而树的度是树内各结点的度的最大值。记录每一个队伍到达终点的时间,时间重复的队伍舍去,在剩余队伍中取最小;

maisui12138的博客 1042

2024天梯 JAVA L2-2/L2-050 懂蛇语 AC代码

L2-050 懂蛇语JavaAC代码

m0_73861345的博客 578

2024年 团体程序设计天梯赛 GPLT L2-2 懂蛇语

2024年 团体程序设计天梯赛 GPLT L2-2 懂蛇语

2201_75485513的博客 833

第19届PTA天梯赛 鱼与熊掌+满树的遍历

输入每个结点的父结点,同时看看哪个是root,记录下来,并且把每个结点下的子节点保存起来,具体怎么保存,看代码!《孟子 · 告子上》有名言:“鱼,我所欲也,熊掌,亦我所欲也;然后去查看一下他们的度是否一致,根节点除外(根节点度就是0),度不是零就一定是同一个数。大家不懂多多评论区交流,互相请教互相帮助,没准别人一句话就点通你(亲身经历)代码也是写了两种方式,顺序不同而已,没什么思路上的差距。接下来输入一对物品种类编号,遍历所有人,计数即可。然后去前序遍历一下就好了,具体执行看代码。使用C++的STL即可。

qq_63125992的博客 656

2024年天梯赛-全国总决赛

2024年天梯赛-全国总决赛题回顾。

H1727548的博客 1720
上一篇: 【数据结构 | PTA】含茶量
下一篇: 【数据结构 | PTA】与零交换
秋说
秋说 优质创作者: 编程框架、信息安全技术领域 优质创作者: 编程框架、信息安全技术领域
博客等级 码龄4年 3万+粉丝 1906原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值