说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

按升序打印出所有分子分母由1..n中的整数构成的最简真分数,不许先举出再排序,这道题大家有什么好意见,100分相求,即刻给分!

编辑:说三道四文库 发布时间:2018-01-21 03:22
HTML文档下载 WORD文档下载 PDF文档下载
好比n=5,那么就是

1/5  1/4  2/5  1/3  1/2  2/3  3/5  4/5

关键是不许先举出再排序。有什么好算法?
;this function will return c/d that following a/b.
void next(int a,int b,int n, int& c,int& d)
{
   int i;
   int max_i=1;
   int max_r=a%b;
   int r=max_r;
   for(i=2;i<=n;i++){
       r+=b;
       if(r>b)r-=b;
       if(r>max_r){
         max_r=r;
         max_i=i;
       }
   }
   d=max_i;
   c=(a*d+d-1)/b;
}


#define N 5
int main()
{
   int a,b;
   a=1;b=N;
   do
   {
      next(a,b,N,&a,&b);
   }while(a!=N||b!=1);
   return 0;
}
刚才不对,这个怎么样

void next(int a,int b,int n, int* c,int* d)
{
   int i;
   int max_i=1;
   int max_r=a%b;
   int r=max_r;
   for(i=2;i<=n;i++){
       r+=a;
       if(r>=b)r-=b;
       if((b-r)*max_i<(b-max_r)*i){
         max_r=r;
         max_i=i;
       }
   }
   *d=max_i;
   *c=(a* *d+ b-1)/b;
}


#define N 5
int main()
{
   int a,b;
   a=1;b=N;
   do
   {
   printf("%d/%d\n",a,b);
      next(a,b,N,&a,&b);
   }while(a!=1||b!=1);
   return 0;
}
for(i=2;i  <=n;i++){  
             r+=a;  
             if(r  >=b)r-=b;  
             if((b-r)*max_i  <(b-max_r)*i){  
                 max_r=r;  
                 max_i=i;  
             }  
这段里给我注释看看可以么?我没看明白。
如果N不大,可以先求出1到N的最大公倍数M,然后输出i/M,i从1到M-1。
在输出时,先要将i/M化简为x/y,若y>N,则不用输出。
游戏任玩!开源虚拟现实头戴式设备Open DoVision MDCC大会召开倒数10天 看Twitter、Facebook和国内“BAT”三大巨头最新动态 《近匠》Wijmo 5 CTO:从Web到移动,我的25年编程生涯 重复充电、防丢失!多功能智能行李箱Bluesmart 【设计经验传承】图标设计初阶要先型 关于ado的编程时提示问题? @@@@@注意:请大家不要在招聘贴中回复@@@@@@@ 如何得到IE标题栏的拖动事件,禁止拖动 關于.net程序安全配置的問題 请问你是怎么设置XDSL拨号的? 刚才问题已解决,并已经结帖。现在接着问:怎么样实现从CObject下派生一个子类 BCBX在rh9下的安装 关于DLL的问题 ,请教大家 有酬谢 急:水晶报表错误:fail to get specifical page 在文章中,开头和结尾有着相同的结构或话题,这种写法 要建一个面积为150平方米的长方形养鸡场.为了节约 初中作文《这也是课堂》开头,结尾.最好照应的.现在 用18.84米的篱笆靠墙围成了一个半圆形的养鸡场, 写''难忘的事''的文章好的开头结尾(小学)有哪些 1、柴达木盆地属于北温带中的什么带,作物熟制是?2 五种基本地形特征,要写海拔高度和它们的特征.热带, 日本北九州、英国伯明翰、德国鲁尔、美国匹兹堡等都是 一道一元二次方程应用题经销商以每双21元的价格从厂 27号强台风逼近日本 安倍指示万全对奥巴马称阿富汗战后方案有助长期保护巴泰国一旅游车刹车失灵掉下悬崖 致17中国纺织工业展圣保罗开幕 遭巴西纺织澳女子遭熟人实施性虐待 被迫吸瓶装煤陈德铭:希望两会领导人第十次会谈能在《开罗宣言》发表70周年 史实图片首首档陆资银行“宝岛债”完成定价意大利一华人服装厂发生火灾 已造成一天津至秦皇岛高速铁路今天正式开通运营我的导演之路昆吾山魂大蒸之世无能力少女幻想三国狂澜曲榕树湾大街旅游皇后像广场旅游太古城中心旅游太古广场旅游天坛大佛旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘