1、关键就在于分词。
2、(1)string的find()函数查找的是字符(串)出现位置的下标,而非迭代器!
(2)、int转string:全局函数std::to_string
string转int:std::stoi/stol/stoll https://zh.cppreference.com/w/cpp/string/basic_string/stol
class Solution {
public:
vector<string> subdomainVisits(vector<string>& cpdomains){
vector<string> res;
map<string, int> resMap;
for(auto str:cpdomains){
int index = str.find(" ");
int Number = 0;
string numStr;
numStr.assign(str.begin(), str.begin()+index);
Number = stoi(numStr);
str.assign(str.begin()+index+1, str.end());
resMap[str] += Number;
index = str.find(".");
while(index != -1){
str.assign(str.begin()+index+1, str.end());
resMap[str] += Number;
index = str.find(".");
}
}
for(auto itMap:resMap){
string resStr = to_string(itMap.second) + " " +itMap.first;
res.push_back(resStr);
cout << resStr;
}
return res;
}
};