HDU 2897-邂逅明下(博弈-SG函式打表找規律)
邂逅明下
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3778 Accepted Submission(s): 1731
Problem Description
當日遇到月,於是有了明。當我遇到了你,便成了侶。
那天,日月相會,我見到了你。而且,大地失去了光輝,你我是否成侶?這注定是個悽美的故事。(以上是廢話)
小t和所有世俗的人們一樣,期待那百年難遇的日食。駐足街頭看天,看日月漸漸走近,小t的脖子那個酸呀(他堅持這個姿勢已經有半個多小時啦)。他低下仰起的頭,環顧四周。忽然發現身邊竟站著位漂亮的mm。天漸漸暗下,這mm在這街頭竟然如此耀眼,她是天使嗎?站著小t身邊的天使。
小t對mm驚呼:“緣分吶~~”。mm卻毫不含糊:“是啊,500年一遇哦!”(此後省略5000字….)
小t趕緊向mm要聯絡方式,可mm說:“我和你玩個遊戲吧,贏了,我就把我的手機號告訴你。”小t,心想天下哪有題目能難倒我呢,便滿口答應下來。mm開始說遊戲規則:“我有一堆硬幣,一共7枚,從這個硬幣堆裡取硬幣,一次最少取2枚,最多4枚,如果剩下少於2枚就要一次取完。我和你輪流取,直到堆裡的硬幣取完,最後一次取硬幣的算輸。我玩過這個遊戲好多次了,就讓讓你,讓你先取吧~”
小t掐指一算,不對呀,這是不可能的任務麼。小t露出得意的笑:“還是mm優先啦,呵呵~”mm霎時愣住了,想是對小t的反應出乎意料吧。
她卻也不生氣:“好小子,挺聰明呢,要不這樣吧,你把我的郵箱給我,我給你發個文字,每行有三個數字n,p,q,表示一堆硬幣一共有n枚,從這個硬幣堆裡取硬幣,一次最少取p枚,最多q枚,如果剩下少於p枚就要一次取完。兩人輪流取,直到堆裡的硬幣取完,最後一次取硬幣的算輸。對於每一行的三個數字,給出先取的人是否有必勝策略,如果有回答WIN,否則回答LOST。你把對應的答案發給我,如果你能在今天晚上8點以前發給我正確答案,或許我們明天下午可以再見。”
小t二話沒說,將自己的郵箱給了mm。當他興沖沖得趕回家,上網看郵箱,哇!mm的郵件已經到了。他發現文字長達100000行,每行的三個數字都很大,但是都是不超過65536的整數。小t看錶已經下午6點了,要想手工算出所有結果,看來是不可能了。你能幫幫他,讓他再見到那個mm嗎?
那天,日月相會,我見到了你。而且,大地失去了光輝,你我是否成侶?這注定是個悽美的故事。(以上是廢話)
小t和所有世俗的人們一樣,期待那百年難遇的日食。駐足街頭看天,看日月漸漸走近,小t的脖子那個酸呀(他堅持這個姿勢已經有半個多小時啦)。他低下仰起的頭,環顧四周。忽然發現身邊竟站著位漂亮的mm。天漸漸暗下,這mm在這街頭竟然如此耀眼,她是天使嗎?站著小t身邊的天使。
小t對mm驚呼:“緣分吶~~”。mm卻毫不含糊:“是啊,500年一遇哦!”(此後省略5000字….)
小t趕緊向mm要聯絡方式,可mm說:“我和你玩個遊戲吧,贏了,我就把我的手機號告訴你。”小t,心想天下哪有題目能難倒我呢,便滿口答應下來。mm開始說遊戲規則:“我有一堆硬幣,一共7枚,從這個硬幣堆裡取硬幣,一次最少取2枚,最多4枚,如果剩下少於2枚就要一次取完。我和你輪流取,直到堆裡的硬幣取完,最後一次取硬幣的算輸。我玩過這個遊戲好多次了,就讓讓你,讓你先取吧~”
小t掐指一算,不對呀,這是不可能的任務麼。小t露出得意的笑:“還是mm優先啦,呵呵~”mm霎時愣住了,想是對小t的反應出乎意料吧。
她卻也不生氣:“好小子,挺聰明呢,要不這樣吧,你把我的郵箱給我,我給你發個文字,每行有三個數字n,p,q,表示一堆硬幣一共有n枚,從這個硬幣堆裡取硬幣,一次最少取p枚,最多q枚,如果剩下少於p枚就要一次取完。兩人輪流取,直到堆裡的硬幣取完,最後一次取硬幣的算輸。對於每一行的三個數字,給出先取的人是否有必勝策略,如果有回答WIN,否則回答LOST。你把對應的答案發給我,如果你能在今天晚上8點以前發給我正確答案,或許我們明天下午可以再見。”
小t二話沒說,將自己的郵箱給了mm。當他興沖沖得趕回家,上網看郵箱,哇!mm的郵件已經到了。他發現文字長達100000行,每行的三個數字都很大,但是都是不超過65536的整數。小t看錶已經下午6點了,要想手工算出所有結果,看來是不可能了。你能幫幫他,讓他再見到那個mm嗎?
Input
不超過100000行,每行三個正整數n,p,q。
Output
對應每行輸入,按前面介紹的遊戲規則,判斷先取者是否有必勝策略。輸出WIN或者LOST。
Sample Input
7 2 4
6 2 4
Sample Output
LOST
WIN
Source
Recommend
gaojie
規律:
迴圈節:1,(p個)0,(q個)正整數…………
AC程式碼:
打表函式程式碼:
解題思路:
SG函式打表找規律。規律:
迴圈節:1,(p個)0,(q個)正整數…………
AC程式碼:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;
int main()
{
int n,p,q;
while(~scanf("%d%d%d",&n,&p,&q))
{
if((n%(p+q)<=p)&&n%(p+q))
puts("LOST");
else
puts("WIN");
}
return 0;
}
打表函式程式碼:
void SG(int n,int p,int q)
{
int i,j;
memset(sg,0,sizeof(sg));
for(i=p+1; i<=n; ++i)
{
memset(vis,0,sizeof(vis));
for(j=p; j<=q; ++j)
vis[sg[i-j]]=1;//標記最小的不屬於這個集合的非負整數
for(j=0; j<n; ++j)
if(!vis[j])
{
sg[i]=j;
break;
}
}
for(i=0; i<n; i++)
cout<<sg[i]<<endl;
}
相關文章
- HDU 5795 A Simple Nim (SG函式+打表找規律)函式
- HDU 1847-Good Luck in CET-4 Everybody!(博弈-SG函式/找規律)Go函式
- 打表找規律
- HDU 1846-Brave Game(巴什博弈-SG函式)GAM函式
- HDU 6298 Maximum Multiple(找規律)
- HDU 4951 Multiplication table(找規律)
- 博弈論進階之SG函式函式
- 博弈學習(一) NIM + SG函式函式
- HDU 1848 Fibonacci again and again (尼姆博弈+sg函式)AI函式
- SG 函式初步 HDU 1536 && HDU 1944函式
- HDU1729 Stone Game (SG函式)GAM函式
- HDU5139 Formula (找規律+離線處理)ORM
- 博弈論基礎之sg函式與nim函式
- A Multiplication Game (博弈,規律)GAM
- 【博弈論】組合遊戲及SG函式淺析遊戲函式
- HDU-6415 Rikka with Nash Equilibrium (DP/找規律)UI
- HDU 5439 Aggregated Counting(找規律+預處理)
- ECNU OJ 3354 領外賣(博弈-SG函式)函式
- 兩個需要求 sg 函式的樹上博弈問題函式
- 取石子的幾個找sg函式的問題函式
- HDU 1848 Fibonacci again and again(SG函式)AI函式
- HDU 1847 Good Luck in CET-4 Everybody!(找規律版巴什博奕)Go
- NIM遊戲/SG函式遊戲函式
- HDU 2082-找單詞(母函式-有限次)函式
- POJ 2311-Cutting Game(Nim博弈-sg函式/記憶化搜尋)GAM函式
- HDU4342 History repeat itself數學規律題
- 博弈論進階之Multi-SG
- 博弈論進階之Every-SG
- Touring cities (找規律 哈密爾頓迴路)
- 8.13(優先佇列貪心維護+打表找規律+對頂堆優先佇列+DFS減枝+貪心dp)佇列
- 數學規律題,數論知識:hdu1792
- LeetCode-6. Z字形變換(找規律)LeetCode
- codeforces 340CTourist Problem(找規律數學題)
- ZOJ 3876 May Day Holiday(找規律||打表-基姆拉爾森計算公式(求某年某月某日星期幾))公式
- HUNAN -11566 Graduation Examination(找規律)NaN
- Gym - 101532A Subarrays Beauty(位操作找規律)
- 杭電ACM hdu 2082 找單詞 解題報告(母函式)ACM函式
- SG_007_CHAPTER 4 (匯聚函式)APT函式