D:Queen Collisions
像我这样的只会水题
然后大牛不屑做,然后就我做了
题目输入的是皇后的摆放位置,需要求解皇后可以互相吃的对数
输入n,棋盘就是n*n
输入g,下面有g行,分别是k,x,y,s,t,那么皇后的位置就是(x + i*s, y +i*t), ( i = 0, 1, ..., k-1)
我的思路比较差,所以时间效率不高,自己可以想想高效的算法
做过八皇后问题的应该知道皇后的位置不是用二维数组存的
这题也是一样,不能用二维数组去求,不然会超时
我的方法是开四个数组,两个长度是n,两个长度是2*n-1,分别存每一行皇后的个数
每一列皇后的个数,每一条斜线上皇后的个数,那么所有皇后冲突的对数就是每个数组求和-4,
over……,莫鄙视哥的水,攒人品中……