Advertisement
Guest User

Untitled

a guest
May 31st, 2016
298
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.78 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 MaxPlatfomr3x3_31._05._2016
  8. {
  9. class Program
  10. {
  11. static void Main(string[] args)
  12. {
  13. long[] size = Console.ReadLine().Split(new char[] { ' ' }, StringSplitOptions.None).Select(long.Parse).ToArray();
  14.  
  15. long[,] inputNumbs = new long[size[0], size[1]];
  16. inputNumbs = (ReadingInputNumbers(size));
  17.  
  18. long[,] max3x3Platform = new long[3, 3];
  19. FindingMaxPlatform(inputNumbs);
  20. }
  21.  
  22. static void FindingMaxPlatform(long[,] scannedMatrix)
  23. {
  24. long[,] maxPlatform = new long[3, 3];
  25. long bestSum = long.MinValue;
  26. long bestRow = 0;
  27. long bestCol = 0;
  28.  
  29. for (long rowScan = 0; rowScan < scannedMatrix.GetLength(0) - 2; rowScan++)
  30. {
  31. for (long colScan = 0; colScan < scannedMatrix.GetLength(1) - 2; colScan++)
  32. {
  33. long currentSum = scannedMatrix[rowScan, colScan] + scannedMatrix[rowScan, colScan + 1] + scannedMatrix[rowScan, colScan + 2] +
  34. scannedMatrix[rowScan + 1, colScan] + scannedMatrix[rowScan + 1, colScan + 1] + scannedMatrix[rowScan + 1, colScan + 2] +
  35. scannedMatrix[rowScan + 2, colScan] + scannedMatrix[rowScan + 2, colScan + 1] + scannedMatrix[rowScan + 2, colScan + 2];
  36. if (currentSum > bestSum)
  37. {
  38. bestSum = currentSum;
  39. bestRow = rowScan;
  40. bestCol = colScan;
  41. }
  42. }
  43. }
  44.  
  45. Console.WriteLine(bestSum);
  46. for (long rowSave = bestRow; rowSave < bestRow + 3; rowSave++)
  47. {
  48. for (long colSave = bestCol; colSave < bestCol + 3; colSave++)
  49. {
  50. Console.Write(scannedMatrix[rowSave, colSave] + " ");
  51. }
  52. Console.WriteLine();
  53. }
  54. }
  55.  
  56. static long[,] ReadingInputNumbers(long[] matrixSize)
  57. {
  58. long[,] readNumbers = new long[matrixSize[0], matrixSize[1]];
  59.  
  60. for (long rowRead = 0; rowRead < readNumbers.GetLength(0); rowRead++)
  61. {
  62. string[] rowNumbers = Console.ReadLine().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).ToArray();
  63.  
  64. for (long colRead = 0; colRead < readNumbers.GetLength(1); colRead++)
  65. {
  66. readNumbers[rowRead, colRead] = long.Parse(rowNumbers[colRead]);
  67. }
  68. }
  69. return readNumbers;
  70. }
  71. }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement