程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> UVa 156 map的使用

UVa 156 map的使用

編輯:C++入門知識

UVa 156 map的使用


背景:主要是學習map相關知識,詳見代碼

我的代碼:

#include
#include
#include
#include
#include
using namespace std;
map map1;
mapmap2;
vector vector1,ans;

string string1_lower(string string1){    
     for(int i=0;i < string1.size();i++)
         string1[i]=tolower(string1[i]);    
     sort(string1.begin(),string1.end());    //由於string定義了四則運算和關系運算符,可以直接用sort排序 
     return string1;
}

int main(void){
    string string1,string2;
    while(cin >> string1 && string1 != "#"){
        vector1.push_back(string1);
        string1=string1_lower(string1);
        if(map1.count(string1) == 0) map1[string1]=0;    //先用map.count()檢索看是否存在該key。
        map1[string1]++;    //直接用key做下標訪問第二個元素
    }
    for(int i=0;i < vector1.size();i++){
        if(map1[string1_lower(vector1[i])] == 1) ans.push_back(vector1[i]);
    }
    sort(ans.begin(),ans.end());
    for(vector::iterator it=ans.begin();it != ans.end();it++) cout<<*it<

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved