Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2017
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.13 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace _08.MentorGroup
  8. {
  9. class Program
  10. {
  11. static void Main(string[] args)
  12. {
  13. SortedDictionary<string,Student> studentsDict = new SortedDictionary<string, Student>();
  14.  
  15. while (true)
  16. {
  17. string input = Console.ReadLine();
  18. if (input == "end of dates")
  19. {
  20. break;
  21. }
  22.  
  23. List<string>inputData = input.Split(' ', ',').ToList();
  24. string userName = inputData[0];
  25. inputData.RemoveAt(0);
  26. Student someStudent = new Student(userName);
  27. someStudent.Dates = inputData.Select(x => DateTime.ParseExact(x, "dd/MM/yyyy",System.Globalization.CultureInfo.InvariantCulture)).ToList();
  28. List<DateTime> studentDates = inputData.Select(x => DateTime.ParseExact(x, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture)).ToList();
  29.  
  30.  
  31.  
  32.  
  33.  
  34. if (studentsDict.ContainsKey(userName))
  35. {
  36. foreach (var date in studentDates)
  37. {
  38. studentsDict[userName].Dates.Add(date);
  39. }
  40.  
  41. }
  42. else
  43. {
  44. studentsDict.Add(userName, someStudent);
  45. }
  46.  
  47.  
  48.  
  49. }
  50.  
  51. while (true)
  52. {
  53. string input = Console.ReadLine();
  54. if (input == "end of comments")
  55. {
  56. break;
  57. }
  58.  
  59. var inputData = input.Split('-');
  60.  
  61. if (!studentsDict.ContainsKey(inputData[0]))
  62. {
  63. continue;
  64. }
  65.  
  66.  
  67.  
  68. studentsDict[inputData[0]].Comments.Add(inputData[1]);
  69.  
  70.  
  71. }
  72.  
  73. foreach (var student in studentsDict.Values)
  74. {
  75. Console.WriteLine(student.Name);
  76. Console.WriteLine("Comments:");
  77. foreach (var comment in student.Comments)
  78. {
  79. Console.WriteLine($"- {comment}");
  80. }
  81. Console.WriteLine("Dates attended:");
  82. foreach (var date in student.Dates.OrderBy(x => x))
  83. {
  84.  
  85. Console.WriteLine($"-- {date.ToString($"dd")}/{date.ToString($"MM")}/{date.ToString($"yyyy")}" +
  86. $"");
  87. }
  88. }
  89. }
  90.  
  91. public class Student
  92. {
  93. public string Name { get; }
  94. public List<string> Comments { get; set; }
  95. public List<DateTime> Dates { get; set; }
  96.  
  97. public Student(string name)
  98. {
  99. this.Name = name;
  100. Comments = new List<string>();
  101. Dates = new List<DateTime>();
  102. }
  103.  
  104.  
  105.  
  106. }
  107. }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement