24 lines
534 B
C#
24 lines
534 B
C#
namespace AdventOfCode.HelperClasses;
|
|
|
|
public class IntArrayEqualityComparer : IEqualityComparer<int[]>
|
|
{
|
|
public bool Equals(int[]? x, int[]? y)
|
|
{
|
|
if (x is null || y is null || x.Length != y.Length) return false;
|
|
|
|
return !x.Where((t, i) => t != y[i]).Any();
|
|
}
|
|
|
|
public int GetHashCode(int[] obj)
|
|
{
|
|
var result = 17;
|
|
foreach (var t in obj)
|
|
{
|
|
unchecked
|
|
{
|
|
result = result * 23 + t;
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
} |