埃及分数
设计一个算法,把一个真分数表示为埃及分数之和的形式。
所谓的埃及分数是指分子为1的分数,如7/8=1/2+1/3+1/24.
要求用最少的埃及分数来表示。
即:输入A/B,用最少的埃及分数去表示A/B这个分数。
贪心算法:
1 #include<stdio.h> 2 int fun(int A,int B); 3 int main() 4 { 5 int A,B; 6 scanf("%d%d",&A,&B); 7 if(A>=B) return 0; 8 else fun(A,B); 9 return 0; 10 } 11 int fun(int A,int B) 12 { 13 int D,C,flag=0; 14 printf("%d/%d=",A,B); 15 if(A==1) 16 { 17 printf("%d/%d\n",A,B); 18 return 0; 19 } 20 else 21 { 22 while(A!=1) 23 { 24 D=B/A; 25 C=D+1; 26 if(flag==0) 27 { 28 printf("1/%d",C); 29 flag=1; 30 } 31 else 32 { 33 printf("+1/%d",C); 34 } 35 A=A*C-B; 36 B=B*C; 37 if(B%A==0) 38 { 39 B=B/A; 40 A=1; 41 } 42 } 43 printf("+%d/%d",A,B); 44 printf("\n"); 45 } 46 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App