记录编号 51488 评测结果 AAAAAAAAAAA
题目名称 法雷序列 最终得分 100
用户昵称 Gravatarcstdio 是否通过 通过
代码语言 C++ 运行时间 0.009 s
提交时间 2012-12-24 18:10:05 内存使用 0.50 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
struct fraction{
	int x;
	int y;
	//分数x/y
};
bool coprime(int x,int y){//x<y
	int i;
	for(i=2;i<=x;i++) if(x%i==0&&y%i==0) return 0;
	return 1;
}
bool cmp(struct fraction a,struct fraction b){
	if(a.x*b.y<b.x*a.y) return 1;
	return 0;
}
int main(){
	freopen("frac1.in","r",stdin);
	freopen("frac1.out","w",stdout);
	struct fraction s[40000];
	int n,sum,i,j;
	scanf("%d",&n);
	sum=0;
	for(j=1;j<=n;j++){
		for(i=1;i<j;i++){
			if(coprime(i,j)){
				s[sum].x=i,s[sum].y=j,sum++;
			}
		}
	}
	sort(s,s+sum,cmp);
	printf("0/1\n");
	for(i=0;i<sum;i++) printf("%d/%d\n",s[i].x,s[i].y);
	printf("1/1\n");
	return 0;
}