From 0e6f2199f02033ce494283151fe22f90f1d7310f Mon Sep 17 00:00:00 2001 From: Gonzalo Diaz Date: Fri, 24 May 2024 13:58:14 -0400 Subject: [PATCH 1/2] [REFACTOR] [Hacker Rank]: Diagonal Difference complexity reduced. --- .../hackerrank/warmup/DiagonalDifference.cs | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/algorithm-exercises-csharp/src/hackerrank/warmup/DiagonalDifference.cs b/algorithm-exercises-csharp/src/hackerrank/warmup/DiagonalDifference.cs index 265094e..8244b46 100644 --- a/algorithm-exercises-csharp/src/hackerrank/warmup/DiagonalDifference.cs +++ b/algorithm-exercises-csharp/src/hackerrank/warmup/DiagonalDifference.cs @@ -15,26 +15,13 @@ public static int diagonalDifference(List> _arr) int diag2 = 0; int last = _arr.Count - 1; - int i = 0; - foreach (List line in _arr) + for (int i = 0; i < _arr.Count; i++) { - int j = 0; - foreach (int cell in line) - { - if (i == j) - { - diag1 += cell; - diag2 += _arr[last - i][j]; - } - - j += 1; - } - - i += 1; + diag1 += _arr[i][i]; + diag2 += _arr[last - i][i]; } int result = Math.Abs(diag1 - diag2); return result; } - } From 1eeb75f9e4b1d47b6a1737631e9e11d485f11023 Mon Sep 17 00:00:00 2001 From: Gonzalo Diaz Date: Fri, 24 May 2024 14:57:38 -0400 Subject: [PATCH 2/2] [REFACTOR] [Hacker Rank]: Diagonal Difference complexity reduced. Assert message added. --- .../src/hackerrank/warmup/DiagonalDifference.Test.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/algorithm-exercises-csharp-test/src/hackerrank/warmup/DiagonalDifference.Test.cs b/algorithm-exercises-csharp-test/src/hackerrank/warmup/DiagonalDifference.Test.cs index 4472a2e..e7c1563 100644 --- a/algorithm-exercises-csharp-test/src/hackerrank/warmup/DiagonalDifference.Test.cs +++ b/algorithm-exercises-csharp-test/src/hackerrank/warmup/DiagonalDifference.Test.cs @@ -14,7 +14,9 @@ public void testDiagonalDifference() int expectedAnswer = 15; int result = DiagonalDifference.diagonalDifference(arr); - Assert.AreEqual(expectedAnswer, result); + Assert.AreEqual(expectedAnswer, result, + String.Format("DiagonalDifference.diagonalDifference answer must be: {0}", expectedAnswer) + ); } }