当前位置: 首页 > news >正文

[codevs1288] 埃及分数

题目传送门

迭代深搜。

学了个骚气的按需开数组。

注意不能出现相等的情况。

要进行约分,否则会搜爆。

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 using namespace std;
 5 
 6 int gcd(int x,int y)
 7 {
 8     return y?gcd(y,x%y):x;
 9 }
10 
11 void reduce(int &x,int &y)
12 {
13     int g=gcd(x,y);
14     x/=g;y/=g;
15 } 
16 
17 int *buf,*ans;
18 int fl,dep=1;
19 
20 void dfs(int a,int b,int d)
21 {
22     reduce(a,b);
23     if(d==1)
24     {
25         if(a==1&&b>buf[d+1]&&b<=ans[d])
26         {
27             buf[d]=b;
28             fl=1;
29             for(int i=1;i<=sizeof(buf);i++)
30                 ans[i]=buf[i];
31         }
32         return;
33     }
34     for(int i=d*b/a;i>max(b/a,buf[d+1]);i--)
35     {
36         buf[d]=i;
37         int g=gcd(b,i);
38         dfs(i/g*a-b/g,b/g*i,d-1);
39     }
40 }
41 
42 int main()
43 {
44     int a,b;
45     scanf("%d%d",&a,&b);
46     while(!fl)
47     {
48         dep++;
49         ans=new int[dep+5];
50         buf=new int[dep+5];
51         ans[1]=0x3f3f3f3f;
52         buf[dep+1]=0;
53         dfs(a,b,dep);
54     }
55     for(int i=dep;i>0;i--)printf("%d ",ans[i]);
56     return 0;
57 }

 

转载于:https://www.cnblogs.com/eternhope/p/10003863.html

相关文章:

  • unity拍照保存到ios手机
  • redis之进阶
  • 视图矩阵的推导(1)
  • 均值、平均值、数学期望
  • 视图矩阵的推导(2)
  • opengl从画三角形到画一个立方体(一)
  • SphereCast和SphereCastAll
  • Java中String和byte[]间的转换浅析
  • opengl从画三角形到画一个立方体(二)
  • C语言列出真分数序列代码及解析
  • opengl从画三角形到画一个立方体(三)
  • es
  • opengl从画三角形到画一个立方体(四)
  • opengl从画三角形到画一个立方体(五)
  • ZYNQ. GPIO
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • 2019.2.20 c++ 知识梳理
  • angular组件开发
  • CentOS 7 修改主机名
  • CSS3 变换
  • download使用浅析
  • JS字符串转数字方法总结
  • spring-boot List转Page
  • use Google search engine
  • vue:响应原理
  • vue中实现单选
  • 编写符合Python风格的对象
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 今年的LC3大会没了?
  • 什么是Javascript函数节流?
  • 通过npm或yarn自动生成vue组件
  • 微信小程序设置上一页数据
  • 一个JAVA程序员成长之路分享
  • 赢得Docker挑战最佳实践
  • 用 Swift 编写面向协议的视图
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • (2.2w字)前端单元测试之Jest详解篇
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (十六)一篇文章学会Java的常用API
  • (图)IntelliTrace Tools 跟踪云端程序
  • (未解决)macOS matplotlib 中文是方框
  • (一)Thymeleaf用法——Thymeleaf简介
  • (一)UDP基本编程步骤
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • ******之网络***——物理***
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET Project Open Day(2011.11.13)
  • .Net Redis的秒杀Dome和异步执行
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .NET开源快速、强大、免费的电子表格组件