Advertisement
Guest User

Untitled

a guest
May 22nd, 2019
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.59 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 arrays
  8. {
  9. class Program
  10. {
  11.  
  12. static void Main(string[] args)
  13. {
  14. int size = int.Parse(Console.ReadLine());
  15. var matrix = new string[size, size];
  16. var commands = Console.ReadLine().Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries).ToArray();
  17. int minerRow = 0;
  18. int minerCol = 0;
  19. int totalCoal = 0;
  20. for (int row = 0; row < size; row++)
  21. {
  22. var line = Console.ReadLine().Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries).ToArray();
  23. for (int col = 0; col < size; col++)
  24. {
  25. if (line[col] == "s")
  26. {
  27. minerRow = row;
  28. minerCol = col;
  29. }
  30. if (line[col] == "c")
  31. {
  32. totalCoal++;
  33. }
  34. matrix[row, col] = line[col];
  35. }
  36. }
  37.  
  38. int minedCoal = 0;
  39. foreach (var item in commands)
  40. {
  41. switch (item)
  42. {
  43. case "up":
  44. if (minerRow - 1 >= 0)
  45. {
  46. matrix[minerRow, minerCol] = "*";
  47. if (matrix[minerRow - 1, minerCol] == "c")
  48. {
  49. minedCoal++;
  50. if (minedCoal == totalCoal)
  51. {
  52. Console.WriteLine($"You collected all coals! ({minerRow - 1}, {minerCol})");
  53. return;
  54. }
  55. }
  56. else if (matrix[minerRow - 1, minerCol] == "e")
  57. {
  58. Console.WriteLine($"Game over! ({minerRow + 1}, {minerCol})");
  59. return;
  60. }
  61.  
  62. matrix[minerRow - 1, minerCol] = "s";
  63. minerRow -= 1;
  64.  
  65.  
  66. }
  67.  
  68. break;
  69. case "down":
  70. if (minerRow + 1 < matrix.GetLength(0))
  71. {
  72. matrix[minerRow, minerCol] = "*";
  73. if (matrix[minerRow + 1, minerCol] == "c")
  74. {
  75. minedCoal++;
  76. if (minedCoal == totalCoal)
  77. {
  78. Console.WriteLine($"You collected all coals! ({minerRow + 1}, {minerCol})");
  79. return;
  80. }
  81. }
  82. else if (matrix[minerRow + 1, minerCol] == "e")
  83. {
  84. Console.WriteLine($"Game over! ({minerRow + 1}, {minerCol})");
  85. return;
  86. }
  87.  
  88. matrix[minerRow + 1, minerCol] = "s";
  89. minerRow += 1;
  90.  
  91.  
  92. }
  93.  
  94. break;
  95. case "right":
  96. if (minerCol + 1 < matrix.GetLength(1))
  97. {
  98. matrix[minerRow, minerCol] = "*";
  99. if (matrix[minerRow, minerCol + 1] == "c")
  100. {
  101. minedCoal++;
  102. if (minedCoal == totalCoal)
  103. {
  104. Console.WriteLine($"You collected all coals! ({minerRow}, {minerCol + 1})");
  105. return;
  106. }
  107. }
  108. else if (matrix[minerRow, minerCol + 1] == "e")
  109. {
  110. Console.WriteLine($"Game over! ({minerRow}, {minerCol + 1})");
  111. return;
  112. }
  113.  
  114. matrix[minerRow, minerCol + 1] = "s";
  115. minerCol += 1;
  116.  
  117.  
  118. }
  119.  
  120. break;
  121. case "left":
  122. if (minerCol - 1 >= 0)
  123. {
  124. matrix[minerRow, minerCol] = "*";
  125. if (matrix[minerRow, minerCol + 1] == "c")
  126. {
  127. minedCoal++;
  128. if (minedCoal == totalCoal)
  129. {
  130. Console.WriteLine($"You collected all coals! ({minerRow}, {minerCol - 1})");
  131. return;
  132. }
  133. }
  134. else if (matrix[minerRow, minerCol - 1] == "e")
  135. {
  136. Console.WriteLine($"Game over! ({minerRow}, {minerCol - 1})");
  137. return;
  138. }
  139.  
  140. matrix[minerRow, minerCol - 1] = "s";
  141. minerCol -= 1;
  142.  
  143.  
  144. }
  145.  
  146. break;
  147. default:
  148. break;
  149. }
  150. }
  151. int left = 0;
  152. for (int i = 0; i < size; i++)
  153. {
  154. for (int j = 0; j < size; j++)
  155. {
  156. if (matrix[i, j] == "c")
  157. {
  158. left++;
  159. }
  160. }
  161. }
  162. Console.WriteLine($"{left} coals left. ({minerRow}, {minerCol})");
  163.  
  164. }
  165. }
  166. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement