Advertisement
Guest User

Untitled

a guest
Jun 11th, 2017
702
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.62 KB | None | 0 0
  1. Почтовые адреса
  2. ограничение по времени на тест2 секунды
  3. ограничение по памяти на тест512 мегабайт
  4. вводстандартный ввод
  5. выводстандартный вывод
  6. В данной задаче почтовый адрес представляет собой строку вида login@domain, где
  7.  
  8. login — это непустая строка, состоящая из строчных и прописных букв английского алфавита, точек и знаков плюс, начинающаяся с буквы,
  9. domain — это непустая последовательность из строчных и прописных букв английского алфавита и точек, причем точки разбивают эту
  10. последовательность на непустые строки, состоящие только из букв.
  11. При сравнении почтовых адресов регистр букв игнорируется (адреса woRk@woRK.Ru и WORk@work.Ru эквивалентны).
  12.  
  13. Если домен почтового адреса равен gmail.com для него выполняются еще два правила:
  14.  
  15. все точки в login игнорируются (адреса work@gmail.com и w.o.r.k@gmail.com эквивалентны,
  16. если в login есть один или более знаков плюс, все что следует за самым левым плюсом игнорируется (адреса work@gmail.com и
  17. work+from+home@gmail.com эквивалентны).
  18. Вам будет заданы n почтовых адресов, требуется разбить их на группы эквивалентных адресов.
  19.  
  20. Входные данные
  21. В первой строке следует целое положительное число n (1 ≤ n ≤ 2·104) — количество почтовых адресов.
  22.  
  23. В следующих n строках заданы сами адреса по одному в строке. Гарантируется, что они корректны. Все заданные адреса различны.
  24. Длина почтовых адресов не менее 3 и не более 100 символов.
  25.  
  26. Выходные данные
  27. В первую строку выведите одно число k — количество групп эквивалентных адресов.
  28.  
  29. В следующих k строках выведите сами группы по одной группе в строке. Сначала должно идти целое число — размер текущей группы,
  30. а затем через пробел сами почтовые адреса, которые принадлежат в текущей группе.
  31. Разрешается выводить группы и адреса в каждой группе в произвольном порядке.
  32.  
  33. Выводите почтовые адреса именно так, как они заданы во входных данных. Каждый адрес из входных данных должен принадлежать ровно
  34. одной группе.
  35.  
  36. Примеры
  37. входные данные
  38. 6
  39. DEVELOPER.@gmail.com
  40. t+es+ter@GMAIL.COM
  41. T@bmail.com
  42. a@gmail.com.ru
  43. D.eveloper@Gmail.Com
  44. a+b@gmail.com.ru
  45. выходные данные
  46. 5
  47. 1 a@gmail.com.ru
  48. 1 t+es+ter@GMAIL.COM
  49. 2 DEVELOPER.@gmail.com D.eveloper@Gmail.Com
  50. 1 a+b@gmail.com.ru
  51. 1 T@bmail.com
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement