Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2017
378
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace _04.Files
  6. {
  7. public class File
  8. {
  9. public string Name { get; set; }
  10.  
  11. public string Folder { get; set; }
  12.  
  13. public long Size { get; set; }
  14.  
  15. }
  16.  
  17. public class Files
  18. {
  19. public static void Main()
  20. {
  21. var filesNumber = int.Parse(Console.ReadLine());
  22. var allFiles = new List<File>();
  23.  
  24. for (int i = 0; i < filesNumber; i++)
  25. {
  26. var input = Console.ReadLine().Split('\\');
  27. var fileData = input.Last().Split(';');
  28. var fileName = fileData[0];
  29. var fileSize = fileData.Last();
  30.  
  31. var currFile = new File();
  32. currFile.Folder = input[0];
  33. currFile.Name = fileName;
  34. currFile.Size = long.Parse(fileSize);
  35. allFiles.Add(currFile);
  36. }
  37.  
  38. var command = Console.ReadLine().Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries);
  39. var folder = command.Last();
  40. var ext = command.First();
  41.  
  42. var results = new Dictionary<string,long>();
  43.  
  44. foreach (var file in allFiles)
  45. {
  46. if (file.Folder.Equals(folder) && file.Name.EndsWith(ext))
  47. {
  48. results[file.Name] = file.Size;
  49. }
  50. }
  51.  
  52. if (results.Count == 0)
  53. {
  54. Console.WriteLine("No");
  55. }
  56.  
  57. else
  58. {
  59. foreach (var result in results.OrderByDescending(r => r.Value).ThenBy(r => r.Key))
  60. {
  61. Console.WriteLine($"{result.Key} - {result.Value} KB");
  62. }
  63. }
  64. }
  65. }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement