【UVA11538】Chess Queen题解
此题有Θ(T)的做法,感谢lrc大佬讲解
已经得到了
ans1=Cm1An2=nm(n−1)
ans2=Cn1Am2=nm(m−1)
ans1与ans2为在同一行与同一列互相攻击的皇后数
ans3为在同一斜列的互相攻击皇后数
显然
ans3=2×[A22+A32+...+An2×(m−n+1)+...+A32+A22]
如何化简?将此式展开
ans3=[1×2+2×3+...+(n−1)×n]×4+2n(n−1)(m−n)
前半部分就像小学奥数中的通项求和问题了
ans3=i=1∑n−1i(i+1)×4+2n(n−1)(m−n)
=i=1∑n−1i2×4+i=1∑n−1×4+2n(n−1)(m−n)
由∑i=1ni2=6n(n+1)(2n+1)得
ans3=[6n(n−1)(2n−1)+2n(n−1)]×4+2n(n−1)(m−n)
=32n(n−1)(2n−1)+2n(n−1)(m−n)
最后再把ans1,ans2,ans3加起来即可
Ps:此题不能通过分析边角与非边角位置的攻击数来统计答案,这样会使解答更为复杂。