题目来源
题目描述
题目解析
模拟
class Solution {
public int numUniqueEmails(String[] emails) {
Set<String> set = new HashSet<>();
for (String email : emails){
StringBuilder s = new StringBuilder();
String[] temp = email.split("@");
s.append(temp[0].split("\\+")[0].replace(".", "")); // 本地名称
s.append("@");
s.append(temp[1]); //域名
set.add(s.toString());
}
return set.size();
}
}
class Solution {
public:
string unique_email(char * str, int size){
string ans;
bool skip = false;
for(int i = 0; i < size; ){
char ch = *(str + i);
if(ch == '@'){
ans += (str + i);
break;
}else if(ch == '+'){
skip = true;
i++;
}else{
if(skip || ch == '.'){
i++;
}else{
ans += ch;
i++;
}
}
}
return ans;
}
int numUniqueEmails(vector<string>& emails) {
set<string> myset;
for(string email : emails){
myset.insert(unique_email((char*)email.c_str(), email.length()));
}
return myset.size();
}
};