From 174dd451dab5cf722440568b88033f26c9b991e7 Mon Sep 17 00:00:00 2001 From: MH Hung Date: Tue, 26 Aug 2025 14:12:02 +0800 Subject: [PATCH 1/2] [#3000] feat(AreaOfMaxDiagonal): add C# solution --- 202508/3000 areaOfMaxDiagonal/C#/Program.cs | 38 +++++++++++++++++++ .../C#/areaOfMaxDiagonal.csproj | 10 +++++ 2 files changed, 48 insertions(+) create mode 100644 202508/3000 areaOfMaxDiagonal/C#/Program.cs create mode 100644 202508/3000 areaOfMaxDiagonal/C#/areaOfMaxDiagonal.csproj diff --git a/202508/3000 areaOfMaxDiagonal/C#/Program.cs b/202508/3000 areaOfMaxDiagonal/C#/Program.cs new file mode 100644 index 0000000..ce53784 --- /dev/null +++ b/202508/3000 areaOfMaxDiagonal/C#/Program.cs @@ -0,0 +1,38 @@ +public class Solution +{ + public int AreaOfMaxDiagonal(int[][] dimensions) + { + int max = 0; + int maxArea = 0; + + foreach (var dimension in dimensions) + { + var dimensionSqrt = dimension[0] * dimension[0] + dimension[1] * dimension[1]; + var area = dimension[0] * dimension[1]; + if (dimensionSqrt > max) + { + max = dimensionSqrt; + maxArea = area; + } + else if (dimensionSqrt == max) + { + maxArea = Math.Max(maxArea, area); + } + } + return maxArea; + } +} + +public class Program +{ + public static void Main() + { + var Solution = new Solution(); + + var dimensions = new int[][] { [6,5],[8,6],[2,10],[8,1],[9,2],[3,5],[3,5]}; + + var result = Solution.AreaOfMaxDiagonal(dimensions); + Console.WriteLine(result); + } +} + diff --git a/202508/3000 areaOfMaxDiagonal/C#/areaOfMaxDiagonal.csproj b/202508/3000 areaOfMaxDiagonal/C#/areaOfMaxDiagonal.csproj new file mode 100644 index 0000000..2150e37 --- /dev/null +++ b/202508/3000 areaOfMaxDiagonal/C#/areaOfMaxDiagonal.csproj @@ -0,0 +1,10 @@ + + + + Exe + net8.0 + enable + enable + + + -- 2.49.1 From 4b92457f409479020945774ee34f7355616a242a Mon Sep 17 00:00:00 2001 From: MH Hung Date: Tue, 26 Aug 2025 14:22:31 +0800 Subject: [PATCH 2/2] [#3000] feat(AreaOfMaxDiagonal): add golang solution --- 202508/3000 areaOfMaxDiagonal/GO/main.go | 27 ++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 202508/3000 areaOfMaxDiagonal/GO/main.go diff --git a/202508/3000 areaOfMaxDiagonal/GO/main.go b/202508/3000 areaOfMaxDiagonal/GO/main.go new file mode 100644 index 0000000..cf28307 --- /dev/null +++ b/202508/3000 areaOfMaxDiagonal/GO/main.go @@ -0,0 +1,27 @@ +package main + +import ( + "fmt" + "math" +) + +func areaOfMaxDiagonal(dimensions [][]int) int{ + maxDiagonal := 0 + maxArea := 0 + + for _, dimension := range dimensions{ + l := dimension[0] + w := dimension[1] + diagonalSquare := l * l + w * w + area := l * w + + if diagonalSquare > maxDiagonal{ + maxDiagonal = diagonalSquare + maxArea = area + }else if diagonalSquare == maxDiagonal{ + maxArea = int(math.Max(float64(maxArea), float64(area))) + } + } + + return maxArea +} \ No newline at end of file -- 2.49.1