蓝桥集训之有序分数
-
核心思想:Stern-Brocot Tree
- 遍历一个区间内的所有最简分数 – – 区间两端分数 分子相加/分母相加 递归
-
#include<iostream> using namespace std; int n; void dfs(int a,int b,int c,int d) //ac分子 bd分母 { if(b+d>n) return; dfs(a,b,a+c,b+d); printf("%d/%d\n", a+c , b+d); dfs(a+c,b+d,c,d); } int main() { cin>>n; puts("0/1"); dfs(0,1,1,1); puts("1/1"); }