news 2026/5/20 10:55:17

打卡信奥刷题(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/5/16 16:55:44

[网鼎杯 2020 青龙组]you_raise_me_up

打开文件后发现给了n,m,c的值n 2**512 m 391190709124527428959489662565274039318305952172936859403855079581402770986890308469084735451207885386318986881041563704825943945069343345307381099559075 c 66658513942032142458567894507236586325208167916217967759097…

作者头像 李华
网站建设 2026/5/13 3:46:01

DeepSeek写的论文AI率90%?实测这个方法降到15%以内

DeepSeek写的论文AI率90%&#xff1f;实测这个方法降到15%以内 用DeepSeek写了一篇文献综述&#xff0c;知网一测&#xff1a;AI率96%。 当时我就慌了。距离提交截止还有三天&#xff0c;要是重写根本来不及。后来找到了方法&#xff0c;5分钟把AI率从96%降到了8%。 先说结论…

作者头像 李华
网站建设 2026/5/18 20:39:33

2026软著代办平台推荐:从人工到AI,效率提升10倍的选择

去年帮公司申请了12个软著&#xff0c;前6个找的传统代办公司&#xff0c;后6个用的AI工具。 结果很有意思&#xff1a;前6个平均每单花了500块&#xff0c;耗时3周左右&#xff0c;还有2个被打回补正&#xff1b;后6个平均每单花了40块&#xff0c;当天出材料&#xff0c;全部…

作者头像 李华
网站建设 2026/5/15 8:48:14

AI绘图:快速出好图的核心技巧与常见误区

AI绘图的效率与质量并非完全依赖工具&#xff0c;而是取决于对提示词逻辑的掌握、对风格边界的理解&#xff0c;以及对人机协同的合理运用——这三者是快速出好图的核心底层能力。在实践中&#xff0c;许多用户困惑于“为什么同样的工具&#xff0c;输出效果差异巨大”&#xf…

作者头像 李华
网站建设 2026/5/19 5:56:17

2026免费降AI工具测评:哪款能把知网AI率降到15%以下

2026免费降AI工具测评&#xff1a;哪款能把知网AI率降到15%以下 花了一周时间&#xff0c;我把能找到的免费降AI工具都试了一遍。 先说结论&#xff1a;免费工具能用&#xff0c;但效果有限。如果你的AI率在50%以下&#xff0c;免费工具可能够用&#xff1b;如果在50%以上&…

作者头像 李华
网站建设 2026/5/15 0:05:45

基于Thinkphp和Laravel的小区物业管理系统设计与实现

目录 小区物业管理系统设计与实现摘要技术架构功能模块系统特点实现效果 项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理 小区物业管理系统设计与实现摘要 该系统基于ThinkPHP和Laravel框架开发&#xff0c;旨在提升小区物业管理效率和服务质量。…

作者头像 李华