杭电 1.2.2 hide handkerchief
2012-03-22 16:25
260 查看
原题地址: http://acm.hdu.edu.cn/game/entry/problem/show.php?chapterid=1§ionid=2&problemid=6
首先这题开始没看出来什么道道,就打算用遍历枚举的方法做,结果是堆栈溢出,数组开得太大了,于是乎不知道怎么办,所以我百度了一下,的值这题的规律是M与N互质,所以就写了这个代码~~贴上
#include<iostream>
using namespace std;
int main()
{
int m, n, temp;
while (cin>>m>>n)
{
if ((m == -1)&&(n == -1))
break;
while (n != 0)
{
temp = n;
n = m % n;
m = temp;
}
if (m == 1) cout<<"YES"<<endl;
else cout<<"POOR Haha"<<endl;
}
system ("pause");
return 0;
}
其实这题本身没有什么讲的,关键是我又踏回了编程之路……还有决定这段时间学习数论,感觉挺有意思的。
hide handkerchief |
Time Limit: 10000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) |
Total Submission(s): 1708 Accepted Submission(s): 609 |
Problem Description The Children’s Day has passed for some days .Has you remembered something happened at your childhood? I remembered I often played a game called hide handkerchief with my friends. Now I introduce the game to you. Suppose there are N people played the game ,who sit on the ground forming a circle ,everyone owns a box behind them .Also there is a beautiful handkerchief hid in a box which is one of the boxes . Then Haha(a friend of mine) is called to find the handkerchief. But he has a strange habit. Each time he will search the next box which is separated by M-1 boxes from the current box. For example, there are three boxes named A,B,C, and now Haha is at place of A. now he decide the M if equal to 2, so he will search A first, then he will search the C box, for C is separated by 2-1 = 1 box B from the current box A . Then he will search the box B ,then he will search the box A. So after three times he establishes that he can find the beautiful handkerchief. Now I will give you N and M, can you tell me that Haha is able to find the handkerchief or not. If he can, you should tell me "YES", else tell me "POOR Haha". |
Input There will be several test cases; each case input contains two integers N and M, which satisfy the relationship: 1<=M<=100000000 and 3<=N<=100000000. When N=-1 and M=-1 means the end of input case, and you should not process the data. |
Output For each input case, you should only the result that Haha can find the handkerchief or not. |
Sample Input3 2 -1 -1 |
Sample OutputYES |
#include<iostream>
using namespace std;
int main()
{
int m, n, temp;
while (cin>>m>>n)
{
if ((m == -1)&&(n == -1))
break;
while (n != 0)
{
temp = n;
n = m % n;
m = temp;
}
if (m == 1) cout<<"YES"<<endl;
else cout<<"POOR Haha"<<endl;
}
system ("pause");
return 0;
}
其实这题本身没有什么讲的,关键是我又踏回了编程之路……还有决定这段时间学习数论,感觉挺有意思的。
相关文章推荐
- 杭电acm 2104 hide handkerchief
- 杭电ACM 2104: hide handkerchief
- 【菜鸟做水题】:杭电 hide handkerchief (辗转相除判断2数互质)
- 【杭电ACM】1.2.3 hide handkerchief
- (HDUStep 1.2.2)hide handkerchief(用辗转相除法来求最大公约数)
- hdu 杭电 2104 hide handkerchief
- 2104 hide handkerchief
- 杭电acm_step1.2.2
- F - hide handkerchief 利用辗转相除法 来计算两个数的最大公约数
- HDOJ 2104 hide handkerchief(判断互质)
- 杭电 ACM 1.2.2
- hide handkerchief HDU - 2104
- HDU 2104 hide handkerchief
- HDU 2104 hide handkerchief
- HDU 2104 hide handkerchief
- hdu 2104 hide handkerchief
- hdu——2104——hide handkerchief
- hdu acm 2104 hide handkerchief
- HDU 2104 hide handkerchief
- HDU 2104 hide handkerchief【数论】