标题:zoj 1003
只看楼主
zjdxsunyan
Rank: 1
等 级:新手上路
帖 子:30
专家分:5
注 册:2011-4-10
结帖率:85.71%
已结贴  问题点数:20 回复次数:1 
zoj 1003
#include <iostream>
#include <cstring>
#include <algorithm>
#include <map>
#include <set>
#include <cmath>
#include <vector>
#include <string.h>
#include <cstdio>
using namespace std;
int win;

void solve(int a, int b, int s) {
if ( win == 1 ) return;
if ( a == 1 && b == 1 ) {
win = 1;
return;
}
if ( s == 101 ) {
if ( a == 1 && b > 1 )
win = 0;
return;

}
if ( a % s == 0 ) solve(a / s, b, s + 1);
if ( b % s == 0 ) solve(a, b / s, s + 1);
solve(a, b, s + 1);
}

int main() {
int n, m;
while (scanf("%d%d", &n, &m) != EOF) {
win = -1;
solve(min(n, m), max(n, m), 2);
if ( win != 0 ) {
printf("%d\n", max(n, m));

}
else {
printf("%d\n", min(n, m));
}
}
return 0;
}
谁能告诉我这这个solve函数到底是什么意思?你们为什么能想到呢?如何想到的
搜索更多相关主题的帖子: include return 
2011-11-09 12:08
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:20 
...........

[ 本帖最后由 yuccn 于 2011-11-10 09:52 编辑 ]

我行我乐
我的博客:
http://blog.yuccn. net
2011-11-10 09:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-354697-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.294880 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved