天天看點

UVA 11806 - Cheerleaders(數論+容斥原理)

題意:在一個棋盤上,要求四周的四行必須有旗子,問有幾種擺法。

思路:直接算很容易亂掉,利用容斥原理,可知aubucud = |a| + |b| + |c| + |d| - |ab| - |bc| - |ac| - |ad| - |bd| - |cd| + |abc| + |abd| + |acd| + |bcd| - |abcd|

由此利用位運算去計算即可

代碼: