CodeForces - 197A Plate Game(博弈+思维)
生活随笔
收集整理的這篇文章主要介紹了
CodeForces - 197A Plate Game(博弈+思维)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目鏈接:點(diǎn)擊查看
題目大意:給出一個(gè)指定大小的矩形桌子,再給出指定大小的盤子,要求兩個(gè)人輪流往桌子上放盤子,必須滿足:
不能擺放的人即為失敗,問先手必勝還是先手必?cái)?/p>
題目分析:這個(gè)題目,訓(xùn)練的時(shí)候還是稍微多想了一會(huì),一開始是以為會(huì)和矩形的長度和寬度有關(guān)系,想列公式算算一張桌子最多能放多少個(gè)盤子,然后用盤子數(shù)目的奇偶來判斷誰能獲勝,但。。我不會(huì)算
看到這個(gè)題目出的人也不算少,于是就換了個(gè)思路,最后在稍微畫了幾種情況之后,突然恍然大悟
其實(shí)這個(gè)題目,感覺真的是經(jīng)典的博弈題目思想,感覺還是挺好的
正解就是:先手先在正中間放一個(gè)盤子,然后后手放在哪里,先手緊接著對(duì)稱著放,最后肯定是后手失敗
有了上面的解釋之后,結(jié)論就是:
若矩形的大小放不下第一個(gè)盤子,則后手勝利,反之先手勝利
實(shí)現(xiàn)的話就很簡單了,重要的是思想,真的感覺挺好玩的一個(gè)題目(水題真好玩)
代碼掛不掛就沒什么必要了。。:
#include<iostream> #include<cstdlib> #include<string> #include<cstring> #include<cstdio> #include<algorithm> #include<climits> #include<cmath> #include<cctype> #include<stack> #include<queue> #include<list> #include<vector> #include<set> #include<map> #include<sstream> #include<unordered_map> using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const int N=1e5+100;int main() { // freopen("input.txt","r",stdin);int a,b,c;cin>>a>>b>>c;if(a<2*c||b<2*c)cout<<"Second"<<endl;elsecout<<"First"<<endl;return 0; }?
總結(jié)
以上是生活随笔為你收集整理的CodeForces - 197A Plate Game(博弈+思维)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CodeForces - 1110G T
- 下一篇: PAT (Advanced Level)