news 2026/4/26 8:51:13

打卡信奥刷题(2760)用C++实现信奥题 P3752 语言普查

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2760)用C++实现信奥题 P3752 语言普查

P3752 语言普查

题目背景

“Kiaosmaonsnai Assi fi wais.”

“Kjamqosoaksi mais pas?”

“Oci! Asia olo mnai naso!”

“2333 在说什么啊根本听不懂……”

这是 Yugo 国的日常……

Yugo 国的人民在进行一次人口普查,由于 Yugo 国是典型的多民族国家,所以拥有许多种语言。

题目描述

Yugo 国有许多不同的种族,总共有N NN种不同的语言,但是主席扔给了你几本字典,这样,你就知道他们在说什么语了。你的任务就是判断他们在说什么语并填上户口本。

具体的,给出N NN种语言的名称以及已知的来自该语言的若干个单词,保证每个单词最多出现在一种语言中。同时你还会得到若干个句子,对于每个句子,你都需要判断它属于哪种语言(单词匹配不区分大小写)。

一个句子是一个仅包含大小写字母、空格、-'.,?!;()的字符串,其中有且仅有.,?!;()是分隔符。一个句子由若干个单词和分隔符构成。

句子中每个极大的不包含分隔符的子串都是一个单词。即:若一个句子的子串S SS不包含分隔符,且不存在该句子的另一个子串T TT满足T TT不包含分隔符、S SST TT的子串且S ≠ T S\ne TS=T,则S SS是该句子中的一个单词。

同时,输入数据中的句子有以下性质:

  • 一个句子中不会同时包含来自不同语言的两个单词。
  • 一个句子中包含至少一个来自一种语言的单词。
  • 一个句子中可能出现在任何一个语言的已知词语中都没有出现过的词语。

一个句子属于一种语言当且仅当该句子中存在一个单词S SS来自该语言。

输入格式

第一行一个整数N NN,表示不同语言的数量。

接下来N NN行,依次是该语言的名称和该语言中的若干个单词,单词之间用空格隔开。

接下来一行为空行。

接下来若干行(不超过10 3 10^3103行),每行一个句子。

输出格式

对于每个句子,输出一行一个字符串,表示该句子属于的语言的名称。

输入输出样例 #1

输入 #1

4 Qzrian yy ghy qzr Yugoslavian mihailova petrozavodsk saint-petersburg Suissvia yugoslavia korse mais kohnin Mohaian Jzm Wallace Zhangbaohua djh yy,qzr and ghy are i don't know mihailova saZk amOmlio mais c'est pas Ca wallace is good

输出 #1

Qzrian Yugoslavian Suissvia Mohaian

说明/提示

对于100 % 100\%100%的数据,1 ≤ N ≤ 100 1\le N\le 1001N100,输入数据每行不超过256 256256个字符。

C++实现

#include<bits/stdc++.h>usingnamespacestd;boolcheck(charc){return!islower(c)&&!isupper(c)&&c!='\''&&c!='-';}voidconvert(string&s){for(auto&c:s)if(isupper(c))c+='a'-'A';}intmain(){ios::sync_with_stdio(false);cin.tie(0);map<string,string>mp;string s,a,b;getline(cin,s);stringstreamss(s);intn;ss>>n;while(n--){getline(cin,s);s+=' ';a="";intflag=0;for(auto&c:s){if(check(c)){if(flag++&&b.size())convert(b),mp[b]=a;b="";}else{if(flag)b+=c;elsea+=c;}}}getline(cin,s);while(getline(cin,s)){s+=' ';a="";for(auto&c:s){if(check(c)){convert(a);if(mp.count(a))b=mp[a];a="";}else{a+=c;}}cout<<b<<'\n';}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 12:21:33

年会策划必看:4个能落地的高人气玩法,省预算又出效果

当前企业年会已从传统聚餐转向创意化、效率化、互动化的综合体验&#xff0c;对视觉设计、流程管理、现场互动等工具的需求激增。但传统工具存在设计门槛高需专业软件、场景适配差通用工具难满足年会特定需求、协作效率低跨部门沟通不畅等痛点。国内一批聚焦年会细分场景的实用…

作者头像 李华
网站建设 2026/4/22 2:39:41

AIGC设计:内容生成与场景落地的核心方法与实践指南

AIGC设计的本质&#xff0c;是通过人工智能技术将创意需求转化为可落地的视觉内容。其核心价值并非简单替代人工&#xff0c;而是以“技术赋能场景适配合规保障”的组合逻辑&#xff0c;精准解决用户在效率、创意、版权上的三重核心痛点——效率痛点对应人工设计周期长、批量处…

作者头像 李华
网站建设 2026/4/25 5:54:21

铁轨表面缺陷检测这事儿听起来挺硬核,但用MATLAB玩起来其实有点意思。咱们直接撸代码说人话,先搞张铁轨灰度图读进来

MATLAB 铁轨表面缺陷检测系统 DFT幅度 相位反变化 高斯滤波 二值化 根据欧几里得距离标记前后背景 对前景进行膨胀和腐蚀操作 可以选择忽略图像边缘 选择是否隔离图像中的目标raw_img imread(rail_surface.jpg); img_gray rgb2gray(raw_img); imshow(img_gray), title(原图看…

作者头像 李华
网站建设 2026/4/21 22:13:29

2026毕设ssm+vue旅游服务软件论文+程序

本系统&#xff08;程序源码&#xff09;带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。 系统程序文件列表 开题报告内容 一、选题背景 关于旅游信息化管理问题的研究&#xff0c;现有研究主要以传统单体应用架构或简单的信息展示平台为主&#xff0c;专门…

作者头像 李华
网站建设 2026/4/23 16:48:32

2026毕设ssm+vue旅游出行系统论文+程序

本系统&#xff08;程序源码&#xff09;带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、选题背景关于旅游信息化管理问题的研究&#xff0c;现有研究主要以大型OTA平台&#xff08;如携程、去哪儿等&#xff09;的智慧化建设…

作者头像 李华
网站建设 2026/4/23 19:38:52

SCI论文降AI实测:知网AIGC检测AI率<15%的解决方案

SCI论文降AI实测&#xff1a;知网AIGC检测AI率<15%的解决方案 投SCI的稿子被退回来了&#xff0c;编辑说AI检测没过。Turnitin显示AI率83%。 先说结论&#xff1a;用AIGCleaner处理英文部分&#xff0c;从83%降到了0%。中文部分用比话降AI&#xff08;www.bihuapass.com&am…

作者头像 李华