这题很好玩,这里有两种解法。

第一种我自己写的,先找到所有的既约真分数,然后写了一个cmp函数进行排序最后输出。我写的时候还在想这章不是搜索吗这跟搜索关系不大吧,难道是怕我们思维定式化故意出的题不是搜索题。写完后我好奇的翻了一下别人的题解。。。。。。。。。。。法雷数列!!!!!!!!!!什么鬼,于是我百度了一下。果然用的dfs。(我不知道前面还有多少题不是按照他想考我的方向来的。看来以后写出来也要看看别人写的了。)

先贴我自己写的‘

/*
ID :jinbo wu
LANG: C++
TASK:frac1
*/
#include<bits/stdc++.h>
using namespace std;
struct node
{int x,y;
}s[30000];
int gcd(int x,int y)
{int t;while(t=x%y){x=y;y=t;}if(y==1)return 1;else return 0;
}
bool cmp(node a,node b)
{a.x=a.x*b.y;b.x=b.x*a.y;return a.x<b.x;
}
int main()
{freopen("frac1.in","r",stdin);freopen("frac1.out","w",stdout);int n;scanf("%d",&n);int l=0;for(int i=1;i<=n;i++){if(i==1)s[l].x=0,s[l++].y=1;for(int j=1;j<=i;j++){if(gcd(i,j)){s[l].x=j,s[l++].y=i;}}}sort(s,s+l,cmp);for(int i=0;i<l;i++)printf("%d/%d\n",s[i].x,s[i].y);
}

再贴百度来的法雷数列

#include<cstdio>
using namespace std;
long n;
void dfs(long x1,long y1,long x2,long y2){
if(y1+y2<=n){
dfs(x1,y1,x1+x2,y1+y2);
printf("%d/%d\n",x1+x2,y1+y2);
dfs(x1+x2,y1+y2,x2,y2);
}
}
int main()
{
scanf("%d",&n);
printf("0/1\n");
dfs(0,1,1,1);
printf("1/1\n");
return 0;
}

usaco Ordered Fractions 顺序的分数(两种解法)相关推荐

  1. 整数拆分的两种解法(已完成)

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 整数拆分 ...

  2. 多线程顺序打印的5种解法

    多线程同步的方式有许多,有传统的synchronized锁,还可以使用lock锁,下面列举多线程顺序打印的5种解法,算作对线程同步的一个总结. 文章目录 经典面试题 多种解法 使用 Lock 使用 w ...

  3. 约瑟夫环问题的两种解法(详解)

    约瑟夫环问题的两种解法(详解) 题目: Josephus有过的故事:39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓.于是决定了自杀方式,41个人排成一个圆 ...

  4. 牛客--追债之旅 两种解法

    文章目录 第一种 第二种: 一共两种解法,所以即便你不会最短路,也可以做,甚至爆搜+剪枝的时间和空间消耗小于最短路做法. 第一种 题意: 小明现在要追讨一笔债务,已知有n座城市,每个城市都有编号,城市 ...

  5. leetcode 73 矩阵置零 C++ 两种解法

    leetcode 73 两种解法~~,没有一个是我想出来的,哈哈~~ one class Solution {public:void setZeroes(vector<vector<int ...

  6. 北林oj-算法设计与分析-Line up in the canteen(两种解法,附思路)

    描述 One day, there is a kind of new delicious food from one of the windows in the canteen. All studen ...

  7. 洛谷——P1597 语句解析(两种解法)

    P1597 语句解析(两种解法) 题目背景 木有背景-- 题目描述 一串长度不超过 255 的 PASCAL 语言代码,只有 a,b,c 3 个变量,而且只有赋值语句,赋值只能是一个一位的数字或一个变 ...

  8. 动态规划——钢筋切割问题的两种解法解析

    动态规划问题--钢筋切割问题的两种解法解析@TOC 钢筋切割问题: 对于这个问题的两种解法 先来个官方点的解法说明: 我对两种解法的个人理解 第一种解法: 这种解法就是把先钢筋分成两部分,分别记为 i ...

  9. Leetcode 855. Exam Room 考场就座:提供两种解法

    Leetcode 855. Exam Room 考场就座: 提供两种解法 855. Exam Room 考场就座(两种解法) 题目描述 示例: 解答1 代码1 解答2 代码2 855. Exam Ro ...

最新文章

  1. 关东升的《从零开始学Swift》3月9日已经上架
  2. 查看tp框架版本方法
  3. 使用gdb调试多进程和多线程
  4. 【CSS3 DEMO】扑克正反面翻牌效果
  5. RAC的搭建(一)--安装环境准备
  6. dotNet 5 中执行 Node.js
  7. 设计模式学习笔记——迭代器(Iterator)模式
  8. Illustrator 教程,了解 Illustrator 中的效果
  9. 手把手 从零开始学习JAVA(入门基础)
  10. Myeclipse/Eclipse中修改WebContent/WebRoot
  11. python模块安装_Python如何安装模块详细教程
  12. 图形算法:圆形生成算法
  13. 招行股东会通过收购永隆银行议案
  14. Ubuntu安装re2c和ninja
  15. 【论文阅读】SteganoGAN: High Capacity Image Steganography with GANs
  16. class path resource [xxx.class] cannot be opened because it does not exist
  17. QQ分享成功后也回调onCancel()
  18. C#实用技巧:创建并操作access数据库(可无密,也可加密)
  19. 回归分析(三)—— 多元线性回归
  20. 2022年最好用的股票数据API接口

热门文章

  1. 2022-2028年中国基金业投资分析及前景预测报告
  2. Ubuntu NFS 服务器和客户端挂载详解
  3. Redis学习之路(一)--下载安装redis
  4. java_pandas_Joinery
  5. [PyTorch] rnn,lstm,gru中输入输出维度
  6. LeetCode简单题之密钥格式化
  7. LLVM基础技术图例
  8. deeplearning模型库
  9. 最大限度地减少块输出中间结果的计算和存储
  10. 2021年大数据Spark(二十九):SparkSQL案例四开窗函数