2017-8-6

题目描述

按分数值递增的顺序输出所有解

解答

求出所有情况再排序即可

代码

/*
ID: 18795871
PROG: frac1
LANG: C++
*/
#include<iostream>
#include<cstring>
#include<fstream>
#include<cstdlib>
using namespace std;
const int N = 10000;ifstream fin("frac1.in");
ofstream fout("frac1.out");int n;
struct fs{int x,y;
}s[N+1];int cmp(const void *a,const void *b){struct fs *k1=(struct fs *)a;struct fs *k2=(struct fs *)b;return k1->x*k2->y-k1->y*k2->x;
}int res(int p,int q){int r;while (q){r=p%q;p=q;q=r;}return p;
}int main()
{int i,j,k;fin>>n;k=0;for (i=1;i<=n;i++){for (j=0;j<=i;j++){if (res(i,j)==1){s[k].x=j;s[k].y=i;k++;}}}qsort(s,k,sizeof(s[0]),cmp);for (i=0;i<k;i++){fout<<s[i].x<<"/"<<s[i].y<<endl;}return 0;
}

为了避免重复,应该把最大公约数不为1的给去掉,因为约去之后会发现我们已经有了,上面我是在cmp函数里面进行通分然后再排序的,或者你也可以将其计算出来然后再进行排序。

/*
ID: 18795871
PROG: frac1
LANG: C++
*/
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;ifstream fin("frac1.in");
ofstream fout("frac1.out");const int N = 160;
int n;struct fs{int a,b;double p;
}x[N*N+1];bool cmp(struct fs a,struct fs b){return a.p<b.p;
}bool gcd(int i,int j){while (j){int t=i%j;i=j;j=t;}if (i==1) return true;return false;
}int main(){int cnt=0;while (fin>>n){for (int i=0;i<=n;i++){for (int j=i+1;j<=n;j++){if (gcd(i,j)){x[cnt].a=i;x[cnt].b=j;x[cnt].p=1.0*i/j;cnt++;}}}sort(x,x+cnt,cmp);for (int i=0;i<cnt;i++){fout<<x[i].a<<"/"<<x[i].b<<endl;}fout<<1<<"/"<<1<<endl;}return 0;
}

USACO-Section2.1 Ordered Fractions(简单数据处理)相关推荐

  1. USACO sec2.1 Ordered Fractions

    首先两重 for 循环对可能取的值约分,分子分母分别存放,根据比较分数大小的方法排序,然后按顺序输出(相同的只输出一个): /* PROG : frac1 LANG : C++ */ # includ ...

  2. USACO 2.1 Ordered Fractions

    #include <stdio.h> #define DEBUG 1 #define TESTCASES 9int max; typedef struct Fraction{int num ...

  3. USACO 2.1.3 Ordered Fractions

    USACO 2.1.3 Ordered Fractions                                           MPS 输入一个自然数N 请写一个程序来增序输出分母小于 ...

  4. TZOJ--3560: Ordered Fractions (枚举)

    3560: Ordered Fractions 描述 Consider the set of all reduced fractions between 0 and 1 inclusive with ...

  5. r 保留之前曲线_R简单数据处理和分析

    本文为猴子老师数据分析系列课程第3讲:简单数据处理和分析的具体实践. 数据:朝阳医院2016年销售数据.xlsx 业务指标: ■ 月均消费次数 ■ 月均消费金额 ■ 客单价 ■ 消费趋势 R的解决思路 ...

  6. Problem 71:Ordered fractions

    Problem 71:Ordered fractions 题目链接:http://static.projecteuler.net/problem=71 题目大意:将所有形如$\frac{n}{d}(d ...

  7. 豆瓣新书速递数据爬取与简单数据处理 | 豆瓣爬虫 python pandas

    豆瓣新书速递数据爬取与简单数据处理 概要 数据爬取 爬取豆瓣平台提供的数据,存储到本地 json 文件. 数据说明 URL 豆瓣新书速推 HTML https://book.douban.com/la ...

  8. STM32 Cubemax(十一) ——JY901陀螺仪数据的读取与简单数据处理

    STM32 Cubemax(十一) --JY901陀螺仪数据的读取与简单数据处理 文章目录 STM32 Cubemax(十一) --JY901陀螺仪数据的读取与简单数据处理 前言 JY901简单介绍 ...

  9. google三大论文之--MapReduce:超大机群上的简单数据处理

    MapReduce:超大机群上的简单数据处理                                              摘要 MapReduce是一个编程模型,和处理,产生大数据集的相 ...

  10. P1458 [USACO2.1]顺序的分数 Ordered Fractions

    P1458 [USACO2.1]顺序的分数 Ordered Fractions - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<bits/stdc++.h&g ...

最新文章

  1. 一文梳理水下检测方法
  2. 可视化工具gephi源码探秘(二)---导入netbeans
  3. objective c 语法
  4. mysql+server+80_Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程
  5. 【BZOJ5213】[ZJOI2018]迷宫(神仙题)
  6. 干货:从0到1搭建「推荐策略产品」的深度思考
  7. Oracle发布更新使数据库性能优化达到75%
  8. Qt Mysql驱动编译过程以及驱动下载
  9. 浙大 博士 计算机视觉,95后浙大博士生开发全新视图合成系统Neural Body,稀疏视角输入即可合成360°人体视图|专访...
  10. FTP网络服务器 Xlight+FlashFXP
  11. 极化SAR图像四成分分解
  12. Android AccessibilityService 辅助功能
  13. Rocketmq 消息的同步发送,异步发送,oneway方式
  14. JavaEE进阶 - Spring Boot 日志文件 - 细节狂魔
  15. c语言单项选择题及答案,2011年计算机二级C语言单项选择题及答案解析精选3
  16. Linux环境下安装部署运行Jmeter
  17. Elasticsearch解决只能查询10000条数据以及查询的total为10000条的解决方案
  18. js,提示,eclipse
  19. Python入门——实现简易数码时钟
  20. Hbase之phoenix的介绍与使用

热门文章

  1. php 用js 封装,JavaScript使用封装
  2. Adobe illustrator 剪切蒙版圆形细胞培养皿 - 连载20
  3. 夜间工作致癌的原因被发现:熬夜破坏了癌症相关基因的节律,导致DNA损伤增加、修复效率降低...
  4. 26岁一年发4篇Cell,他说搞科研要有“十诫”
  5. 生物科研神器!30分钟把人家一天的工作都给干完了!
  6. 自己常用的LINUX命令(20100605更新)
  7. 如何初始化局部变量c语言_重要的事情说三遍:局部变量一定要初始化!你做到了吗?...
  8. 网页导出pdf不完整_网站中的页面如何转成PDF文档?
  9. P1414 又是毕业季II (80分 python3实现)
  10. php培训js重要么,php何以被戏称为“世界上最好的语言”?请看它与js的对比!...