What Are You Talking About杭电1075 map.

这是一个C++程序,用于解决杭电1075题目的问题。程序通过读取字典和文章,利用map数据结构进行字符串翻译。字典部分将火星词映射到英文词,文章部分则根据字典翻译火星语到英文。
摘要由CSDN通过智能技术生成

伊格内修斯很幸运,他昨天遇到了一个火星人。但他不知道火星人使用的语言。火星人给了他一本火星历史书和一本字典当它离开时。现在伊格内修斯想把历史书翻译成英语。你能帮助他吗? 
输入 
这个问题只有一个测试用例,测试用例由两个部分组成,字典部分和book部分。字典部分从单行开始,包含一个字符串“开始”,这个字符串应该被忽略,然后一些行跟随,每一行包含两个字符串,第一个是英语单词,第二个是在火星语中对应的单词。带有单个字符串“END”的一行表示目录部分的结束,而该字符串应该被忽略。书的部分开始于一行包含一个字符串“开始”,这个字符串应该被忽略,然后是用火星语言写的文章。你应该用字典把这篇文章译成英语。如果你在字典里找到这个词,你应该翻译它,把生词写在你的译文里,如果你找不到字典里的词,你就不用翻译它,只要把旧的字复制到你的翻译上就行了。空格(’ ‘),标签(’ \t ‘),输入(’ \n ‘),所有的标点符号都不应该翻译。一行有一个字符串“END”表示book部分的结尾,这也是输入的末尾。所有单词都在小写字母中,每个单词最多包含10个字符,每行包含最多3000个字符。 
输出 
在这个问题上,你必须输出历史书的翻译。

#include<iostream>
#include<string.h>
#include<stdio.h>
#include<map>
using namespace std;
const int M=3e5;
char s[M];
map<string,string> m;
int main() {
 string a,b;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值