当前位置:   article > 正文

CCF-GESP计算机学会等级考试2023年12月四级C++T1小杨的字典_c++ 小杨的字典

c++ 小杨的字典

解析:模拟法,(字典翻译部分用map会更有效率一些)

详见代码:

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int n;
  4. string a[105];
  5. string b[105];
  6. string s;
  7. int main() {
  8. cin >> n;
  9. for(int i = 1; i <= n; i++) {
  10. cin >> a[i] >> b[i];
  11. }
  12. cin >> s;
  13. string t = "";
  14. for(int i = 0; i <= s.length(); i++) {
  15. if (s[i] >= 'a' && s[i] <= 'z') {//是字母
  16. t += s[i];//接上
  17. }
  18. //如果不是字母或者最后一个字符
  19. if (s[i] < 'a' || s[i] > 'z' || i == s.length() - 1) {
  20. if (t != "") {//如果有单词等待翻译
  21. string f = "UNK";//默认找不到
  22. for(int j = 1; j <= n; j++) {//枚举字典
  23. if (a[j] == t) {//找到
  24. f = b[j];//翻译
  25. }
  26. }
  27. cout << f;//输出翻译
  28. }
  29. if (s[i] < 'a' || s[i] > 'z') {//如果不是字母
  30. cout<<s[i];//输出
  31. }
  32. t="";//清空单词
  33. }
  34. }
  35. return 0;
  36. }

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号