package main

import (
"fmt"
"strings"
) func numUniqueEmails(emails []string) int {
var dic map[string]int
dic = make(map[string]int)
for _, s := range emails {
strArr := strings.Split(s, "@")
localname := strArr[]
domainname := strArr[]
plusIndex := strings.Index(localname, "+")
if plusIndex > {
localname = localname[:plusIndex]
}
localname = strings.Replace(localname, ".", "", -)
realmail := localname + "@" + domainname
_, ok := dic[realmail]
if ok {
//found realmail
} else {
dic[realmail] =
}
}
return len(dic)
} func main() {
emails := []string{"test.email+alex@leetcode.com", "test.e.mail+bob.cathy@leetcode.com", "testemail+david@lee.tcode.com"}
num := numUniqueEmails(emails)
fmt.Println(num)
}
public class Solution
{
public int NumUniqueEmails(string[] emails)
{
var dic = new Dictionary<string, int>();
foreach (var email in emails)
{
var mails = email.Split('@');
var localname = mails[];
var domainname = mails[]; var plusIndex = localname.IndexOf('+');
if (plusIndex >= )
{
localname = localname.Substring(, plusIndex);
}
localname = localname.Replace(".", "");
var realmail = localname + "@" + domainname; if (!dic.ContainsKey(realmail))
{
dic.Add(realmail, );
}
}
return dic.Count;
}
}

leetcode929的更多相关文章

  1. [Swift]LeetCode929. 独特的电子邮件地址 | Unique Email Addresses

    Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ...

  2. Leetcode929.Unique Email Addresses独特的电子邮件地址

    每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔. 例如,在 alice@leetcode.com中, alice 是本地名称,而 leetcode.com 是域名. 除了小写字母,这些电 ...

  3. leetcode929 Unique Email Addresses

    Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ...

随机推荐

  1. Spring学习--静态工厂方法、实例工厂方法创建 Bean

    通过调用静态工厂方法创建 bean: 调用静态工厂方法创建 bean 是将对象创建的过程封装到静态方法中 , 当客户端需要对象时 , 只需要简单地调用静态方法 , 而不需要关心创建对象的细节. 要声明 ...

  2. apache flink docker-compose 运行试用

    apache 是一个流处理框架,官方提供了docker 镜像,同时也提供了基于docker-compose 运行的说明 docker-compose file version: "2.1&q ...

  3. 在 ASP.NET 网页中不经过回发而以编程方式实现客户端回调

    在 ASP.NET 网页的默认模型中,用户会与页交互,单击按钮或执行导致回发的一些其他操作.此时将重新创建页及其控件,并在服务器上运行页代码,且新版本的页被呈现到浏览器.但是,在有些情况下,需要从客户 ...

  4. Aria2+yaaw+Chrome插件BaiduExporter实现百度网盘下载

    Aria2+yaaw+Chrome插件BaiduExporter实现百度网盘下载 这篇博客主要为了解决百度网盘下载限速以及linux等操作系统无百度客户端的问题.主要包括两个方面第一个是aria2的安 ...

  5. 系列文章--jQuery教程

    从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery (四) 使用jQu ...

  6. tomcat源码阅读之SingleThreadModel

    一.接口简介: 实现了SingleThreadModel接口的servlet类只能保证在同一时刻,只有一个线程执行该servlet实例的service方法,在tomcat实现中会创建多个servlet ...

  7. linux同一台机子上用多个git 账号

    Step 1 - Create a New SSH KeyWe need to generate a unique SSH key for our second GitHub account. ssh ...

  8. UOJ 188 【UR #13】Sanrd——min_25筛

    题目:http://uoj.ac/problem/188 令 \( s(n,j)=\sum\limits_{i=1}^{n}[min_i>=p_j]f(j) \) ,其中 \( min_i \) ...

  9. 【linux】vim/vi常用指令

    0或者"Home”键:光标转移到此段的最前面字节处. $或者"End"键:光标转移到此段的最后面字节处. n<space>:光标向后移动n个字节. n< ...

  10. Hibernate对substring和cast的支持问题

    http://blog.sina.com.cn/s/blog_8acd9e4b0102uwev.html Hibernate对substring和cast的支持问题 问题:要比较日期的范围...这是只 ...