• 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 }
  • 相关阅读:
    Hoppz板子
    [cf] Invoking the Magic
    [acm]关于字符的处理
    [acm]排序总结
    [acm]循环队列(不是自己写queue)
    [acm]关于map的一些知识
    [acm]二进制枚举
    P1005 矩阵取数游戏 区间DP
    ICPC North Central NA Contest 2017 (部分)
    灾后重建 弗洛伊德最短路
  • 原文地址:https://www.cnblogs.com/objectc/p/4553414.html
Copyright © 2020-2023  润新知