比赛 20140321 评测结果 WWWWWWWWWW
题目名称 考验 最终得分 0
用户昵称 bigmingod 运行时间 0.005 s
代码语言 C++ 内存使用 0.35 MiB
提交时间 2014-03-21 21:19:27
显示代码纯文本
#include<cstdio>
#include<cstdlib>
#define LL long long
using namespace std;
bool b[30];
LL g[30][30],ans,n;
bool f[30][2001];
LL gcd(LL x,LL y)
{ if(y==0) return x; else return gcd(y,x%y);}
LL lcm(LL x,LL y)
{ LL ret=x; ret=ret/gcd(x,y); ret*=y; return ret;}
void dfs(LL x,LL y)
{
	if(x==2)
	{
		if(ans==0) {ans=y; return ;}
		ans=lcm(ans,y);
		return ;
	}
	if(f[x][y]) return ;
	b[x]=true;
	f[x][y]=true;
	LL i;
	for(i=1;i<=n;i++) if(g[x][i]>0&&b[i]==false) dfs(i,gcd(y,g[x][i]));
}	
int main()
{
	freopen("testz.in","r",stdin);
	freopen("testz.out","w",stdout);
	LL i,j;
	scanf("%lld",&n);
	for(i=1;i<=n;i++) for(j=1;j<=n;j++) scanf("%lld",&g[i][j]);
	dfs(1,0);
	printf("%lld",ans);
	return 0;
}