当前位置: 首页 > news >正文

【leetcode】独特的电子邮件地址

题目描述

每个 有效电子邮件地址 都由一个 本地名 和一个 域名 组成,以 ‘@’ 符号分隔。除小写字母之外,电子邮件地址还可以含有一个或多个 ‘.’ 或 ‘+’ 。

例如,在 alice@leetcode.com中, alice 是 本地名 ,而 leetcode.com 是 域名 。
如果在电子邮件地址的 本地名 部分中的某些字符之间添加句点(‘.’),则发往那里的邮件将会转发到本地名中没有点的同一地址。请注意,此规则 不适用于域名 。

例如,"alice.z@leetcode.com” 和 “alicez@leetcode.com” 会转发到同一电子邮件地址。
如果在 本地名 中添加加号(‘+’),则会忽略第一个加号后面的所有内容。这允许过滤某些电子邮件。同样,此规则 不适用于域名 。

例如 m.y+name@email.com 将转发到 my@email.com。
可以同时使用这两个规则。

给你一个字符串数组 emails,我们会向每个 emails[i] 发送一封电子邮件。返回实际收到邮件的不同地址数目。

示例 1:

输入:emails = [“test.email+alex@leetcode.com”,“test.e.mail+bob.cathy@leetcode.com”,“testemail+david@lee.tcode.com”]
输出:2
解释:实际收到邮件的是 “testemail@leetcode.com” 和 “testemail@lee.tcode.com”。

示例 2:

输入:emails = [“a@leetcode.com”,“b@leetcode.com”,“c@leetcode.com”]
输出:3

class Solution {
public:int numUniqueEmails(vector<string>& emails) {int l = emails.size();set<string> m;for(int i=0;i<l;i++){string ss =  emails[i];int index = ss.find("@");string name = "";string s1 = ss.substr(0,index);string mail = ss.substr(index+1);for(int j=0;j<s1.length(); j++){if(s1[j] == '.'){s1 = s1.replace(j,1,"");}}int index2 = s1.find("+");name = s1.substr(0,index2); // ignore +string sss = name + " " + mail;m.insert(sss);}// map<string, string>::reverse_iterator   iter;// for(iter = m.rbegin(); iter != m.rend(); iter++){//   cout<<iter->first<<" "<<iter->second<<endl;// }return m.size();}
};
http://www.lryc.cn/news/204054.html

相关文章:

  • 解密Java中神奇的Synchronized关键字
  • 微信删除的好友还能找回来吗?盘点5种超实用的方法!
  • Nmap 常用命令汇总
  • 谷歌浏览器最新版和浏览器驱动下载地址
  • [游戏开发][Unity]Unity运行时加载不在BuildSetting里的场景
  • flutter开发实战-hero动画简单实现
  • Spring Boot + EasyUI 创建第一个项目(一)
  • 短视频矩阵系统源码/技术应用搭建
  • 硬核子牙:我准备写一本《带你手写64位多核操作系统》的书!
  • c++访问修饰符与继承关系
  • 【RTOS学习】事件组 | 任务通知
  • 【TES605】基于Virtex-7 FPGA的高性能实时信号处理平台
  • Java Azure开发 使用已有token字符串创建GraphServiceClient
  • 【Qt】消息机制和事件
  • 爬虫模拟用户登录
  • asp.net企业招聘管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机毕业设计
  • 艾泊宇产品战略:假如中国禁止直播带货,网红和店家该如何应对?
  • C#调用C/C++从零深入讲解
  • MyBatis篇---第五篇
  • 十三水中各种牌型判断LUA版
  • 2023.10.19 关于设计模式 —— 单例模式
  • 4个鲜为人知的Python迭代过滤函数
  • 使用logger.error(“自定义错误信息描述“,e)将错误信息输出到日志文件上
  • 音乐的数字未来:虚拟演唱会与TikTok的巅峰融合
  • 基于图像识别的跌倒检测算法 计算机竞赛
  • NSS [SWPUCTF 2021 新生赛]PseudoProtocols
  • 字节码进阶之JVM Attach API详解
  • Kubernetes 部署 kubeflow1.6.1
  • 设计模式:建造者模式(C#、JAVA、JavaScript、C++、Python、Go、PHP)
  • Maxon Cinema 4D 2024:打造独一无二的视觉效果 模拟模块大更新