題意:一堆石子n個,a,b兩人輪流從中取,每次取的石子必須在
區間[p,q]內,若剩下的石子少於p個,
取石者須全部取完。最後取石子的者輸。
給出n,p,q,問先取者是否有必勝策略?
思路:巴什博弈變形
證明:假設先手為a,後手為b,初始n個,除最後一次每次取的石子個數必須
在
區間[p,q]內,則:
1.若當前石子共有n = (p+q)*k個,則a必勝,必勝策略為:
a第一次取q個,以後每次若b取m個,a取(p+q-m)個,如此最後必剩下p個給b,a勝
2.若n = (p+q)*k+r,(1
每次取石子活動中,若a取m個,則b取(p+q-m)個,那麼最後必剩下r個給a,
此時r<=p,a只能一次取完,b勝
3.若n = (p+q)*k+r,(p
a第一次取t(1
那麼最後必剩下1
#includeint main()
return 0;
}
HDU 2897 邂逅明下
題意是給n個錢幣,每個人最少取p顆,最多q顆,少於p顆時必須全部全完,取最後一下的人輸,判斷先手是贏還是輸。完全就是那個取1 m的模型的類推,把1換成p,m換成q,於是用類似的做法解決。include include include include include include include i...
HDU2897 邂逅明下
problem description 當日遇到月,於是有了明。當我遇到了你,便成了侶。那天,日月相會,我見到了你。而且,大地失去了光輝,你我是否成侶?這注定是個淒美的故事。以上是廢話 小t和所有世俗的人們一樣,期待那百年難遇的日食。駐足街頭看天,看日月漸漸走近,小t的脖子那個酸呀 他堅持這個姿勢已...
hdu 2897 邂逅明下
bash博弈變形2 初始狀態下有石子n個,除最後一次外其他每次取物品個數必須在 p,q 之間,最後一次取硬幣的人輸。hdu 2897 這題狀態稍微複雜一些,並且勝負條件與之前相反,一般bash博弈裡每次取個數可以看作在 1,m 之間,勝負手判斷為 n 1 m 因此我們可以猜想每次取 p,q 的勝負手...