1. 程式人生 > >HDU 5512 Pagodas(2015ACM/ICPC亞洲區瀋陽站-重現賽(感謝東北大學))

HDU 5512 Pagodas(2015ACM/ICPC亞洲區瀋陽站-重現賽(感謝東北大學))

Pagodas

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 3502    Accepted Submission(s): 2324


 

Problem Description

n pagodas were standing erect in Hong Jue Si between the Niushou Mountain and the Yuntai Mountain, labelled from 1 to n. However, only two of them (labelled aand b, where 1≤a≠b≤n) withstood the test of time.

Two monks, Yuwgna and Iaka, decide to make glories great again. They take turns to build pagodas and Yuwgna takes first. For each turn, one can rebuild a new pagodas labelled i (i∉{a,b} and 1≤i≤n) if there exist two pagodas standing erect, labelled j and k respectively, such that i=j+k or i=j−k. Each pagoda can not be rebuilt twice.

This is a game for them. The monk who can not rebuild a new pagoda will lose the game.

 

 

Input

The first line contains an integer t (1≤t≤500) which is the number of test cases.
For each test case, the first line provides the positive integer n (2≤n≤20000) and two different integers a and b.

 

 

 

 

Output

For each test case, output the winner (``Yuwgna" or ``Iaka"). Both of them will make the best possible decision each time.

 

 

Sample Input

 

16 2 1 2 3 1 3 67 1 2 100 1 2 8 6 8 9 6 8 10 6 8 11 6 8 12 6 8 13 6 8 14 6 8 15 6 8 16 6 8 1314 6 8 1994 1 13 1994 7 12

 

 

Sample Output

 

Case #1: Iaka Case #2: Yuwgna Case #3: Yuwgna Case #4: Iaka Case #5: Iaka Case #6: Iaka Case #7: Yuwgna Case #8: Yuwgna Case #9: Iaka Case #10: Iaka Case #11: Yuwgna Case #12: Yuwgna Case #13: Iaka Case #14: Yuwgna Case #15: Iaka Case #16: Iaka

 

 

Source

2015ACM/ICPC亞洲區瀋陽站-重現賽(感謝東北大學)

 題意:

給你三個數n  a  b

代表這裡有n個石子,編號分別為1~n,剛開始從中取出編號為a和b的石子,然後兩個人輪流從中取出石子,取出的石子必須滿足

j+k或j-k,其中j,k是已經取出石子的編號,問最後誰贏了。

分析:

在取石子的過程中首先|a-b|=c,取石子c,然後讓|c-b|取石子,這樣到最後取得的石子編號是a和b的最大公約數(更相減損術),也就是GCD(a,b)

那麼在取石子的過程中 所有取得的石子都是GCD(a,b)的倍數,(因為a,b都是他們的倍數,所以進行加減之後不管怎樣,得出的數都是他們的倍數),所以根據這個編號為GCD(a,b)的石子,可以把所有gcd(a,b)倍數的石子全部取出。也就是共n/gcd(a,b)個石子,

而且不管取的順序咋樣,都能夠取到這n/gcd(a,b)的石子,所以只要判斷n/gcd(a,b)的奇偶即可。

程式碼先不放: