从第0行0列开始,一行行遍历,直到3行11列。for (int i = 0; i 4; ++i) for( int j = 0; j 12; ++j) { right_search(i, j); down_search(i, j); }对每个遍历到得元素,横向搜索一次,纵向搜索一次比如a[2][3]横向搜索就是从第2行第3列开始向右搜索直到右边的数不等于a[2][3]为止,如果个数小于3,那么不理,大于3,那么这几个数都清空,不用向左边搜索void right_search(int x,int y){ if(a[x][y] == 0)//如果已经是空的就不判断 return; int i,count = 1; for(i = y + 1; i 12; ++i) { if (a[x][y] == a[x][i]) ++count;//如果相同就算一个 else break; } if(count 3)//如果横向的没有达到3个 return; for(i = y; i y + count; ++i)//将找到的赋值为0 { a[x][i] = 0; }}纵向搜索也是类似的道理,向下就行了
Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号