/*
ID: ljracm1
LANG: C++
PROB: frac1
*/
#include<cstdio>
#include<algorithm>
#define T
using namespace std;
struct Item{
double a;
double b;
}p[40000];
bool check(int a,int b){
for(int i=2; i<=min(a,b); i++)
if(a%i==0&&b%i==0)return false;
return true;
}
bool cmp(Item A,Item B){
return A.a/A.b < B.a/B.b;
}
int main(){
#ifdef T
freopen("frac1.in","r",stdin);
freopen("frac1.out","w",stdout);
#endif
int n,t=0;
scanf("%d",&n);
printf("0/1\n");
for(int i=1; i<=n; i++){
for(int j=1; j<i; j++){
if(i%2==0&&j%2==0)continue;
if(check(i,j)){
p[t].a=j; p[t++].b=i;
}
}
}
sort(p,p+t,cmp);
for(int i=0; i<t; i++)
printf("%.0lf/%.0lf\n",p[i].a,p[i].b);
printf("1/1\n");
return 0;
}
usaco frac1
最新推荐文章于 2016-02-15 21:59:10 发布