· 8 years ago · Jun 26, 2018, 06:42 PM
1GMAIL_DOMAIN = "gmail.com"
2
3def main(infile, outfile):
4 groups = {}
5 with open(infile, "r") as f:
6 cnt = int(f.readline())
7 for x in range(cnt):
8 addr = next(f).rstrip()
9 addr_lower = addr.lower()
10 login, domain = addr_lower.split("@")
11 if domain == GMAIL_DOMAIN:
12 if login.find(".") > 0:
13 addr_lower = login.replace(".", "") + "@" + domain
14 if login.find("+") > 0:
15 addr_lower = login[0:login.find("+")] + "@" + domain
16 #print(addr_lower)
17 if addr_lower not in groups:
18 groups[addr_lower] = list()
19 groups[addr_lower].append(addr)
20 #print(groups)
21
22 with open(outfile, "w") as f:
23 f.write("%s\n" % len(groups))
24 for k,v in groups.items():
25 f.write("%s %s\n" % (len(groups[k]), " ".join(groups[k])))
26
27
28if __name__ == "__main__":
29 main("input.txt", "output.txt")