免费货源供应商搜索优化是什么意思
目录
牛客_电话号码(简单哈希模拟)
解析代码
牛客_电话号码(简单哈希模拟)
电话号码__牛客网
解析代码
#include <iostream>
#include <unordered_map>
#include <set>
#include <string>
using namespace std;int main()
{//建立映射:字母->数字string alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";string num = "22233344455566677778889999";unordered_map<char, char> mp;for (int i = 0; i < alpha.size(); ++i){mp[alpha[i]] = num[i];}set<string> set; // 保存转换之后的结果,去重int n = 0;while (cin >> n){set.clear();// 处理n个字符串for (int i = 0; i < n; ++i){string line;cin >> line;string curRet; // 建立空的字符串,保存转换之后的电话号码for (auto& ch : line) // 处理字符串中的每一个字符{if (isdigit(ch))curRet += ch;else if (isupper(ch))curRet += mp[ch];}//转换格式: xxx-xxxxcurRet = curRet.substr(0, 3) + "-" + curRet.substr(3);set.insert(curRet); // 保存结果}for (auto& str : set){cout << str << endl;}cout << endl;}return 0;
}