AcWing 3219. 模板生成系统
原题链接
中等
作者:
把这题Ac了
,
2024-11-25 10:07:59
,
所有人可见
,
阅读 1
#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;
const int N = 110;
string str[N];
int n,m;
int main(){
unordered_map<string,string> map;
cin >> n >> m;
getchar();
for(int i = 0;i < n;i++){
string s;
getline(cin,s);
str[i] = s;
}
for(int i = 0;i < m;i++){
string stg,val;
char c;
cin >> stg;
while(c = getchar(),c != '\"');
while(c = getchar(),c != '\"') val += c;
map[stg] = val;
}
for(int k = 0;k < n;k++){
string item = str[k];
for(int i = 0;i < item.size();i++){
if(i + 1 < item.size() && item[i] == '{' && item[i + 1] == '{'){
int j = i + 3;
string a;
while(item[j] != ' ') a += item[j++];
cout << map[a];
i = j + 2;
}else cout << item[i];
}
cout << endl;
}
return 0;
}