有没有更简单的算法呢?
单元格
[1,1]=6 [1,2]=1 [1,3]=3
[2,1]=7 [2,2]=3 [2,3]=9
[3,1]=3 [3,2]=8 [3,3]=3
红色单元格的数值 从上到下 依次是 6-7-8,形成了3连号
如何判断是否形成了3连号呢?
我只会
C# code
if (([3,1]==8 || [3,2]==8 ||[3,3]==8) &&
([2,1]==7 || [2,3]==7 ||[2,4]==7) &&
([1,1]==6 || [1,3]==6 ||[1,4]==6))
{
[3.4] = "三连";
}
有没有更简明的判断方法呢? 是不是可以用 泛型 List<T> contains 的语句呢?如果是,具体代码该怎么写呢?谢谢
(单元格的表示方法从简)
------解决方案--------------------二位数组,不确定行的对应
ArrayList<ArrayList<Integer>> arrays = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> array = null;
for(循环插入数据) {
array = new ArrayList<Integer>();
array.add(6);
array.add(1);
array.add(3);
arrays.add(array);
}
for (int i = 0; i < arrays.size() - 2; i++) {
if (arrays.get(i).contains(6)
&& arrays.get(i).contains(7)
&& arrays.get(i).contains(8)) {
[3, 4] = "三连";
}
}
------解决方案--------------------
------解决方案--------------------