水手分椰子

本文涉及的产品
函数计算FC,每月15万CU 3个月
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
应用实时监控服务-应用监控,每月50GB免费额度
简介: 水手分椰子

📑前言

本文主要是【C】——C算法的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇
☁️博客首页:阿里云主页听风与他
🌄每日一句:狠狠沉淀,顶峰相见

水手分椰子

第一题

  • 6.5个水手在岛上发现了一堆椰子,先有第一个水手把椰子分成等量的5堆,还
    剩了1个给了猴子,自己藏起一堆。然后第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩了1个给了猴子,自己藏起一堆。以后第三、四个水手依次按此方法处理。最后,第5个水手把剩下的椰子分成等量的5堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个?
#include<stdio.h>
int main(){
   
   
    int i,m,j=0,k,count;
    for(i=4;i<10000;i+=4){
   
   
        count=0;
        m=i;//将i的值赋给m
        //分了五次椰子,所以循环5次
        for(k=0;k<5;k++){
   
   
            //因为四份肯定是均等的,在四份的基础上分成5个还多一个
            j = m/4*5+1;//  m/4 就是一份的值
            m=j; //将j的值赋给m,进行累乘处理
            if(j%4 == 0){
   
   
                count++;
            }else{
   
   
                break;
            }
        }
        //满足5次条件count=4 
        if(count==4){
   
   
            printf("原有椰子数%d个",j);
            break;
        } 
    }
}

第二题

在上题中,如果第5水手分得255个椰子,用递归的方法计算原来这堆椰子的个数。

#include<stdio.h>
int yezi(int y)
{
   
   
    int i;
    for(i=1;i<=5;i++)
    {
   
   
        if((y-1)%5!=0)
            return 0;
        y=(y-1)/5*4;
    }
    return 1;
 }
int main()
{
   
   
    int i;
    for(i=1;;i++)
    {
   
   
        if(yezi(i)==1)
        {
   
   
            printf("%d\n",i);
            break;
        }
    }
 }

📑文章末尾

image.png

相关文章
|
机器学习/深度学习 数据采集 SQL
一文读懂大数据实时计算(一)
本文分为四个章节介绍实时计算,第一节介绍实时计算出现的原因及概念;第二节介绍实时计算的应用场景;第三节介绍实时计算常见的架构;第四节是实时数仓解决方案。
2990 0
一文读懂大数据实时计算(一)
|
10月前
|
缓存 NoSQL Linux
Linux调试
本文介绍了Linux调试、性能分析和追踪的培训资料,涵盖调试、性能分析和追踪的基础知识及常用工具。
593 63
Linux调试
|
XML 安全 API
REST 和 SOAP API 有什么区别?
【8月更文挑战第31天】
683 0
|
11月前
|
Web App开发 算法 安全
什么是阿里云WoSign SSL证书?_沃通SSL技术文档
WoSign品牌SSL证书由阿里云平台SSL证书合作伙伴沃通CA提供,上线阿里云平台以来,成为阿里云平台热销的国产品牌证书产品。
2263 2
|
11月前
|
Java 关系型数据库 开发工具
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案
本文提供了解决方案,如何在IDEA中创建Spring 2.X版本的项目并使用JDK8,尽管Spring 2.X已停止维护且IDEA不再直接支持,通过修改pom.xml或使用阿里云的国内源来创建项目。
945 0
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案
|
算法 程序员
理解操作系统内存管理:页面置换算法全解析
大家好,我是小米,热爱分享技术的大哥哥!今天聊的是操作系统中的页面置换算法。它解决的是内存满载时,如何选择合适的页面移出以腾出空间的问题。主要有三种算法:FIFO(先进先出),简单但性能不佳;LRU(最近最久未使用),考虑时间局部性,性能较好但实现较复杂;OPT(最佳置换),理论上最优但无法实际应用。这些算法各有千秋,在实际应用中需根据场景选择最合适的方案。希望这能帮大家更好地理解内存管理的核心机制!
405 2
|
中间件 关系型数据库 MySQL
史上最详细Docker安装Mycat中间件 | 实现主从的读写分离
史上最详细Docker安装Mycat中间件 | 实现主从的读写分离
874 2
|
Java Unix Linux
开源项目推荐:IM开源即时通讯软件收集,请重点关注Telegram/野火/flamingo
开源项目推荐:IM开源即时通讯软件收集,请重点关注Telegram/野火/flamingo
4477 0
Element-UI中el-input输入值不显示
Element-UI中el-input输入值不显示
780 0
|
SQL 存储 网络协议
【测试开发】进阶篇——各种测试技术分类
按开发阶段划分 单元测试 集成测试 系统测试 验收测试 按测试实施组织划分 α测试 β测试 α和β测试区别 第三方测试 按是否运行划分 静态测试 动态测试 按是否手工划分 手工测试 自动化测试 按是否查看代码划分
【测试开发】进阶篇——各种测试技术分类