1 public class Solution 2 { 3 public int MinDominoRotations(int[] A, int[] B) 4 { 5 var na = A.Length; 6 var nb = B.Length; 7 if (na != nb) 8 { 9 return -1;10 }11 var dic1 = new Dictionary
本文共 1110 字,大约阅读时间需要 3 分钟。
1 public class Solution 2 { 3 public int MinDominoRotations(int[] A, int[] B) 4 { 5 var na = A.Length; 6 var nb = B.Length; 7 if (na != nb) 8 { 9 return -1;10 }11 var dic1 = new Dictionary
思路,分别记录上部和下部的每一个点数出现的索引,然后对以此判断每一个点数的并集,是否包含了全部的索引。
这样的点数,就是可以满足在同一侧全是一样的点数。
下面就要找最小的移动次数,发现最小的移动次数是保持这个点数出现的次数多的一面不动,而把这个点数出现在另一面的牌进行翻转。
如代码所示:34行,求并集。37行,进行最小次数判断。
转载于:https://www.cnblogs.com/asenyang/p/10507314.html