【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();}
};
相关文章:
【leetcode】独特的电子邮件地址
题目描述 每个 有效电子邮件地址 都由一个 本地名 和一个 域名 组成,以 ‘’ 符号分隔。除小写字母之外,电子邮件地址还可以含有一个或多个 ‘.’ 或 ‘’ 。 例如,在 aliceleetcode.com中, alice 是 本地名 ,而 lee…...
解密Java中神奇的Synchronized关键字
文章目录 🎉 定义🎉 JDK6以前🎉 偏向锁和轻量级锁📝 偏向锁📝 轻量级锁📝 自旋锁📝 重量级锁🔥 1. 加锁🔥 2. 等待🔥 3. 撤销 🎉 锁优化…...
微信删除的好友还能找回来吗?盘点5种超实用的方法!
当我们在认识新的朋友时,都喜欢通过添加对方微信来保持日后的联系。但是有时候可能会由于没有及时备注而不小心误删了对方。想要将对方加回来,又找不到有效的方法。微信删除的好友还能找回来吗?当然可以了!但我们要根据实际情况选…...
Nmap 常用命令汇总
Nmap 命令格式 namp 【扫描类型】 选项 {目标ip 或 目标网络段} 根据扫描类型,可分成两类,一种是主机扫描类型,另一种是端口扫描类型 一、常用主机扫描: 扫描类型: -PR 对目标ip所在局域网进行扫描 (使…...
谷歌浏览器最新版和浏览器驱动下载地址
谷歌最新版和驱动下载地址...
[游戏开发][Unity]Unity运行时加载不在BuildSetting里的场景
从Assets开始路径要写全,需要.unity扩展名 如果路径写错了会报错 LoadSceneAsyncInPlayMode expects a valid full path. The provided path was Assets/Works/Resource/Scenes.unity string sceneFullPath "Assets/Works/Resource/Scenes/TestScene.unity…...
flutter开发实战-hero动画简单实现
flutter开发实战-hero动画简单实现 使用Flutter的Hero widget创建hero动画。 将hero从一个路由飞到另一个路由。 将hero 的形状从圆形转换为矩形,同时将其从一个路由飞到另一个路由的过程中进行动画处理。 Flutter Hero动画 Hero 指的是可以在路由(页面)之间“飞行”的 widge…...
Spring Boot + EasyUI 创建第一个项目(一)
创建一个Spring Boot和EasyUI相结合的项目。 一、构建一个Spring Boot项目 Spring Boot之创建一个Spring Boot项目(一)-CSDN博客 二、配置Thymeleaf Spring Boot Thymeleaf(十一)_thymeleaf 设置字体_人……杰的博客-CSDN博客…...
短视频矩阵系统源码/技术应用搭建
短视频矩阵系统开发围绕的开发核心维度: 1. 多账号原理开发维度 适用于多平台多账号管理,支持不同类型账号矩阵通过工具实现统一便捷式管理。(企业号,员工号,个人号) 2. 账号矩阵内容开发维护 利用账号矩…...
硬核子牙:我准备写一本《带你手写64位多核操作系统》的书!
哈喽,我是子牙,一个很卷的硬核男人 深入研究计算机底层、Windows内核、Linux内核、Hotspot源码……聚焦做那些大家想学没地方学的课程。为了保证课程质量及教学效果,一年磨一剑,三年先后做了三个课程:手写JVM、手写OS…...
c++访问修饰符与继承关系
前言 C提供了三个修饰符来限定类成员的被访问权限,分别是public、protected、private。通过限定访问权限,可以达到程序编写者想要解决的安全问题和权限问题。这种权限的设置对于安全是非常必要的。 不同修饰下的类成员被访问权限 类成员默认访问权限为…...
【RTOS学习】事件组 | 任务通知
🐱作者:一只大喵咪1201 🐱专栏:《RTOS学习》 🔥格言:你只管努力,剩下的交给时间! 事件组 | 任务通知 🚁事件组🛴大概原理🛴使用事件组的函数同步…...
【TES605】基于Virtex-7 FPGA的高性能实时信号处理平台
板卡概述 TES605是一款基于Virtex-7 FPGA的高性能实时信号处理平台,该平台采用1片TI的KeyStone系列多核DSP TMS320C6678作为主处理单元,采用1片Xilinx的Virtex-7系列FPGA XC7VX690T作为协处理单元,具有2个FMC子卡接口,各个处理节…...
Java Azure开发 使用已有token字符串创建GraphServiceClient
一、背景说明 在已有的项目中,已经获取到了Graph的AccessToken并保存在内存里面。所以不希望再通过client secret或者certificate去创建GraphServiceClient对象。希望使用现有的token字符串来创建初始化创建GraphServiceClient从而来实现Graph其他API功能。 二、具体…...
【Qt】消息机制和事件
文章目录 事件event()事件过滤器案例:检测鼠标事件案例:定时器 事件 事件(event)是由系统或者 Qt 本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事…...
爬虫模拟用户登录
使用爬虫模拟用户登录过程一般包括以下几个步骤: 导入所需的库:一般需要导入requests和BeautifulSoup库来发送HTTP请求和解析HTML。 import requestsfrom bs4 import BeautifulSoup 发送GET请求获取登录页面:使用requests库发送GET请求&#…...
asp.net企业招聘管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机毕业设计
一、源码特点 asp.net 企业招聘管理系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语 言开发 asp.net企业招聘管理系统 二、功…...
艾泊宇产品战略:假如中国禁止直播带货,网红和店家该如何应对?
近日,印尼宣布将禁止直播带货,这一消息引起了广泛关注。有人欢喜有人忧,很多人为此拍手叫好,但也有很多人为此感到担忧。 今天,我们就来做一个战略推演,假设中国也禁止直播带货,入局直播带货者…...
C#调用C/C++从零深入讲解
C#调用非托管DLL从零深入讲解 一、结构对齐 结构对齐是C#调用非托管DLL的必备知识。 在没有#pragma pack声明下结构体内存对齐的规则为: 第一个成员的偏移量为0,每个成员的首地址为自身大小的整数倍子结构体的第一个成员偏移量应当是子结构体最大成员的整数倍结构体总大小…...
MyBatis篇---第五篇
系列文章目录 文章目录 系列文章目录一、MyBatis 中见过什么设计模式?二、MyBatis 中比如 UserMapper.java 是接口,为什么没有实现类还能调用? 一、MyBatis 中见过什么设计模式? 二、MyBatis 中比如 UserMapper.java 是接口&#…...
DeepSeek-OCR-2效果惊艳:精准识别段落、标题、表格,完美还原排版
DeepSeek-OCR-2效果惊艳:精准识别段落、标题、表格,完美还原排版 1. 为什么需要结构化OCR工具 在日常办公和文档处理中,我们经常遇到这样的困扰:扫描或拍摄的文档图片,经过传统OCR识别后,得到的只是一堆杂…...
OpenClaw 真能提效?拆解 7 个场景背后的实际代价与边界
先说结论AI 助手在邮件分类、文档生成等结构化任务上确实能省时间,但需要前期投入配置和调试成本。代码审查、会议纪要等场景对模型能力和数据质量依赖很高,实际效果可能打折扣,更适合作为辅助工具。部署这类系统要考虑团队规模、数据安全和维…...
生物感知层级与真实维度跃迁理论 ——基于三场正交统一论与电磁神经学的生命认知重构
摘要:本文以三场正交统一论(电磁场为主导、引力场与强弱力相位场正交耦合)与电磁神经学(神经元树突为电磁场收发天线、潜意识为全域场处理器、显意识为集中式符号网关)为底层框架,系统性重构生物感知器官的…...
Ubuntu 20.04下用Python3搞定Mininet可视化编辑器Miniedit(附报错修复指南)
Ubuntu 20.04下Python3运行Miniedit的完整解决方案 在Linux网络仿真领域,Mininet凭借其轻量级和高度可定制的特性,成为众多开发者和研究人员的首选工具。而Miniedit作为Mininet的可视化前端,本应让拓扑创建变得简单直观,但在Pytho…...
二次元创作神器体验:沉浸式漫画分镜界面,快速产出火影同人作品
二次元创作神器体验:沉浸式漫画分镜界面,快速产出火影同人作品 1. 创作工具概览 「忍者绘卷:通灵之术」是一款专为二次元创作者设计的AI绘画工具,基于Tongyi-MAI Z-Image Turbo模型深度优化。这款工具最大的特色是采用了创新的漫…...
spring-ai 第六模型介绍-聊天模型
spring-ai 第六模型介绍-聊天模型 官网 源码示例 spring-ai 第六模型介绍-聊天模型 官网 利用了预训练的语言模型,例如 GPT(生成型预训练变换器),以在自然语言中生成类似人类的响应 spring-ai网址【https://docs.spring.io/spri…...
C# 面试高频题:装箱和拆箱是如何影响性能的?彝
OCP原则 ocp指开闭原则,对扩展开放,对修改关闭。是七大原则中最基本的一个原则。 依赖倒置原则(DIP) 什么是依赖倒置原则 核心是面向接口编程、面向抽象编程, 不是面向具体编程。 依赖倒置原则的目的 降低耦合度&#…...
2026互联网大厂AI招聘趋势:高薪岗位解析,普通人如何抓住AI时代红利?
2026年互联网大厂招聘,AI岗已成绝对主角,百度AI岗占比超90%,阿里超6成,腾讯、字节等AI相关岗位占比也达6-7成,AI不再是“可选项”,而是“必答题”。以下是核心岗位、薪资与优势的精炼解读,帮你快…...
别再傻傻翻文档了!用这个API一键获取Prometheus里所有监控指标(附Node Exporter实战清单)
高效掌握Prometheus监控指标的实战指南 当你第一次登录到公司的Prometheus监控系统,面对成千上万的指标名称,是否感到无从下手?作为运维工程师,我们经常需要在短时间内理解一个全新系统的监控状况,而直接翻阅Exporter…...
OpenClaw 太难装了?试试 LangTARS:一行命令部署 + WebUI 管理面板,还能接入 Dify/Coze/nn??促
1. 什么是 Apache SeaTunnel? Apache SeaTunnel 是一个非常易于使用、高性能、支持实时流式和离线批处理的海量数据集成平台。它的目标是解决常见的数据集成问题,如数据源多样性、同步场景复杂性以及资源消耗高的问题。 核心特性 丰富的数据源支持&#…...
