• uva156 By sixleaves


     1 #include <iostream>
     2 #include <string>
     3 #include <algorithm>
     4 #include <map>
     5 #include <vector>
     6 using namespace std;
     7 
     8 map<stringint> cnt;
     9 vector<string> words;
    10 
    11 string formatWord(const string &s);
    12 
    13 int main() {
    14     
    15     string s;
    16     while(cin >> s) {
    17         
    18         if (s[0] == '#') break;
    19         words.push_back(s);
    20         
    21         string fw = formatWord(s);
    22         if (!cnt.count(fw)) cnt[fw] = 0;
    23         cnt[fw]++;
    24     }
    25     
    26     vector<string> ans;
    27     for (int i = 0; i < words.size(); i++) {
    28         
    29         if ( cnt[formatWord( words[i] ) ] == 1) ans.push_back(words[i]);
    30     }
    31     
    32     sort(ans.begin(), ans.end());
    33     for (int i = 0; i < ans.size(); i++) {
    34         cout << ans[i] << endl;
    35     }
    36     return 0;
    37 }
    38 
    39 string formatWord(const string &s) {
    40     
    41     string ans = s;
    42     int str_size = ans.size();
    43     for (int i = 0; i <str_size; i++) {
    44         
    45         ans[i] = tolower(ans[i]);
    46         
    47     }
    48     sort(ans.begin(), ans.end());
    49     return ans;
    50 
    51 }
  • 相关阅读:
    列举些个建模软件及其crack方法
    解除Server2008远程桌面管理重重关卡
    VMware运行报错
    当下流行的分布式文件系统大阅兵
    Tomcat的目录结构详解
    从Windows Server文件服务到分布式文件服务
    cloudfoundry
    动态磁盘&动态卷
    管理日志(1):为什么要开会
    C# 面试题目 destructor可以是虚方法吗?
  • 原文地址:https://www.cnblogs.com/objectc/p/4553414.html
Copyright © 2020-2023  润新知