AcWing 1360. 有序分数
原题链接
简单
作者:
a行君
,
2024-04-09 22:13:21
,
所有人可见
,
阅读 3
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 100200;
struct Node{
int a;
int b;
double a_b;
}node[N];
bool cmp(Node x,Node y){
return x.a_b<y.a_b;
}
int gcd(int a,int b){
return a%b!=0?gcd(b,a%b):b;
}
int main()
{
int n,idx=0;
cin >> n;
for (int i = 0; i <= n; i ++ ){
for (int j = 1; j <= n; j ++ ){
if(i<=j&&gcd(i,j)==1){
node[idx++] = {i,j,i*1.0/j*1.0};
}
}
}
sort(node,node+idx,cmp);
for (int i = 0; i < idx; i ++ ){
cout << node[i].a<<"/"<<node[i].b<<endl;
}
}