Advertisement
nassss

Untitled

Jan 24th, 2020
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace _10._JumpAround
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. int[] input = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
  12. List<int> startPositions = Console.ReadLine().Split(' ').Select(int.Parse).ToList();
  13. List<int> matrixWithJumps = new List<int>();
  14. int[,] matrix = new int[input[0], input[1]];
  15.  
  16. for (int i = 0; i < input[2]; i++)
  17. {
  18. var jumps = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
  19.  
  20. for (int j = 0; j < 2; j++)
  21. {
  22. matrixWithJumps.Add(jumps[j]);
  23. }
  24. }
  25. int counter = 1;
  26. for (int k = 0; k < input[0]; k++)
  27. {
  28.  
  29. for (int l = 0; l < input[1]; l++)
  30. {
  31. matrix[k, l] += counter;
  32. counter++;
  33. }
  34. }
  35.  
  36. int currentRowPosition = startPositions[0];
  37. int currentColPosition = startPositions[1];
  38.  
  39. long sum = matrix[currentRowPosition, currentColPosition];
  40. matrix[currentRowPosition, currentColPosition] = 0;
  41. int jumpsNumber = 0;
  42.  
  43.  
  44. while ( true )
  45. {
  46. for (int i = 0; i < input[2]*2; i+=2)
  47. {
  48. currentRowPosition += matrixWithJumps[i];
  49. currentColPosition += matrixWithJumps[i + 1];
  50.  
  51. if (currentColPosition <= -1 || currentRowPosition <= -1 || currentRowPosition >= matrix.GetLength(0) || currentColPosition >= matrix.GetLength(1))
  52. {
  53. Console.WriteLine($"escaped {sum}");
  54. return ;
  55. }
  56. if (matrix[currentRowPosition, currentColPosition] == 0)
  57. {
  58. Console.WriteLine($"caught {jumpsNumber}");
  59. return;
  60. }
  61. jumpsNumber++;
  62. sum += matrix[currentRowPosition, currentColPosition];
  63. }
  64. }
  65.  
  66. }
  67. }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement