(12)喝汽水

文章目录

  • 每日一言
  • 题目
  • 解题思路一
    • 代码
  • 解题思路二
    • 代码
  • 结语

每日一言

长风沛雨,艳阳明月。田野被喜悦铺满,天地间充满着生的豪情。


题目

已知1瓶汽水1元,2个空瓶可以换一瓶汽水,输入整数n(n>=0),表示n元,计算一共可以得到多少瓶汽水?


解题思路一

因为一瓶汽水一元,所以我们可以把n看做有几瓶汽水。
假设我有5元,也就是5瓶汽水,此时空瓶也是5
在这里插入图片描述
题目说两个空瓶可以换一瓶
在这里插入图片描述
把每个红色部分看成一瓶,还剩3个空瓶
在这里插入图片描述
同理,把每两瓶看做一瓶
在这里插入图片描述
把每个红色部分看成一瓶,还剩2个空瓶
在这里插入图片描述

把每个红色部分看成一瓶,还剩1个空瓶
在这里插入图片描述
接下来数一数一共喝了多少瓶

注意:红圈里的是用空瓶子新换的

一共有5+2+1+1=9瓶

代码

int main() {
	int sum = 0;//汽水
	scanf("%d", &sum);
	int kong = sum;//空瓶数
	while (kong>=2) {//空瓶多余2个就兑换
		sum += kong/2;//新换的饮料
		kong = kong / 2 + kong % 2;//兑换后的空瓶数
	}
	printf("%d", sum);
	return 0;
}

解题思路二

这道题有没有什么规律呢?
当n=1时,sum=1
当n=2时,sum=3
当n=3时,sum=5
当n=4时,sum=7
当n=5时,sum=9

通过以上列举出来的式子,不难总结出 sum = 2*n - 1

以上只是我们通过不完全归纳法证出来的,仔细思考一下到底对不对?
我们可以这样想:2个空瓶可以换1瓶饮料和1个空瓶,相当于一个空瓶换一瓶汽水,不管你开始有几瓶,最后一定只剩一个空瓶,所以sum = 2*n - 1

难道sum的表达式真的是这样吗?
哈哈~别忘了,当n=0时,sum肯定不是负数

代码

int main() 
{
	int n = 0;//汽水
	scanf("%d", &n);
	if (n > 0)
		printf("%d", n * 2 - 1);
	else
		printf("0");
	return 0;
}

结语

请给自己些耐心,一口吃不成胖子。
山外青山楼外楼,莫把百尺当尽头。
保持空杯心态加油努力吧!


都看到这里啦!真棒(*^▽^*)

可以给作者一个免费的赞赞吗,这将会鼓励我继续创作,谢谢大家

编程小白写作,如有纰漏或错误,欢迎指正


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/370907.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

思科模拟器实验合集

目 录 实验一 常用网络命令的使用.................................... 1 实验二 双绞线制作.................................................. 12 实验三 网络模拟软件.............................................. 15 实验四 交换机基本配置..................…

2018 年全国职业院校技能大赛高职组“信息安全管理与评估”赛项任务书(笔记解析)

1. 网络拓扑图 2. IP 地址规划表 3. 设备初始化信息 阶段一 任务 1:网络平台搭建 1、根据网络拓扑图所示,按照 IP 地址参数表,对 WAF 的名称、各接口 IP 地址 进行配置。 2、根据网络拓扑图所示,按照 IP 地址参数表,对 DCRS 的名称、各接口 IP 地址 进行配置。 3、根据网…

【从0上手Cornerstone3D】如何使用CornerstoneTools中的工具之工具介绍

简单介绍一下在Cornerstone中什么是工具,工具是一个未实例化的类,它至少实现了BaseTool接口。 如果我们想要在我们的代码中使用一个工具,则必须实现以下两个步骤: 使用Cornerstone的顶层addTool函数添加未实例化的工具 将工具添…

JVM 类加载的过程

JVM 类加载的过程 .加载验证准备解析初始化 . 加载 “加载”(Loading)阶段是整个“类加载”(Class Loading)过程中的一个阶段,它和类加载 Class Loading 是不同的,一个是加载 Loading 另一个是类加载 Clas…

Redisson看门狗机制

一、背景 网上redis分布式锁的工具方法,大都满足互斥、防止死锁的特性,有些工具方法会满足可重入特性。如果只满足上述3种特性会有哪些隐患呢?redis分布式锁无法自动续期,比如,一个锁设置了1分钟超时释放,…

贪心算法篇2

“星辰野草&#xff0c;造出无边的天地~” 最⻓递增⼦序列 (1) 题目解析 (2) 算法原理 class Solution { public:int lengthOfLIS(vector<int>& nums) {// 使用dp int n nums.size(), ret 1;// 初始化为1vector<int> dp(n1,1);// 从第二个位置…

彻底学会系列:一、机器学习之线性回归

1.基本概念 线性回归&#xff1a; 有监督学习的一种算法。主要关注多个因变量和一个目标变量之间的关系。 因变量&#xff1a; 影响目标变量的因素&#xff1a; X 1 , X 2 . . . X_1, X_2... X1​,X2​... &#xff0c;连续值或离散值。 目标变量&#xff1a; 需要预测的值: t…

黑豹程序员-ElementPlus选择图标器

ElementPlus组件提供了很多图标svg 如何在你的系统中&#xff0c;用户可以使用呢&#xff1f; 这就是图标器&#xff0c;去调用ElementPlus的icon组件库&#xff0c;展示到页面&#xff0c;用户选择&#xff0c;返回选择的组件名称。 效果 代码 <template><el-inpu…

双非本科准备秋招(16.1)—— 力扣二叉树

1、101. 对称二叉树 检查是否对称&#xff0c;其实就是检查左节点等不等于右节点&#xff0c;我们可以用递归来做。 如果左右节点都为null&#xff0c;说明肯定对称呀&#xff0c;返回true。 如果一个为null一个不为null&#xff0c;或者左右的值不相等&#xff0c;则为false。…

安卓文件传输 -- Android File Transfer

Android File Transfer是一款专门为Mac用户设计的软件&#xff0c;用于在Android设备与Mac之间传输文件。该软件支持多种文件类型&#xff0c;包括图片、音乐、视频、文档等&#xff0c;使用户能够轻松地将文件从Android设备传输到Mac或从Mac传输到Android设备。 Android File…

MoneyBox: 1靶机

主机发现 端口扫描 爆破到了ftp的账号密码&#xff0c;这是ftp的允许匿名登陆&#xff0c;密码为空也是可以的。 ftp 192.168.10.131 输入账号anonymous&#xff0c;密码为空或者anonymous1234也可以&#xff0c;连接上ftp后ls一下&#xff0c;看看有什么内容。 目录爆破发现bl…

NLP入门系列—分词 Tokenization

NLP入门系列—分词 Tokenization 分词是 NLP 的基础任务&#xff0c;将句子&#xff0c;段落分解为字词单位&#xff0c;方便后续的处理的分析。 本文将介绍分词的原因&#xff0c;中英文分词的3个区别&#xff0c;中文分词的3大难点&#xff0c;分词的3种典型方法。最后将介…

[office] Excel2007在工作簿中创建区域名称 #职场发展#经验分享

Excel2007在工作簿中创建区域名称 Excel 提供了几种不同的方法来创建区域名称。但在开始之前&#xff0c;必须注意关于可接受内容的重要规则: 名称不能含有空格。可以用一个下划线字符来代替空格(如Annual Total ) 。 可以使用字母和数字的任意组合&#xff0c;但是名称必须以…

备份RK35XX 设备的ubuntu根文件系统的方法

简介 我们使用 RK35XX 提供的SDK包制作了一个完整的 ubuntu 镜像,烧录到设备中,会在设备中安装很多我们需要的软件,运行的一些自己写的脚本和业务程序,当我们有很多台设备时,不可能每台都一个个去安装,此时我们就需要一个工具来备份当前设备的根文件系统,然后再放到 SD…

ywtool dhcp命令

一.dhcp功能介绍 就是通过脚本实现dhcp地址池的增、删、改、查这几个功能日志文件路径: /var/log/ywtools/ywtool-dhcp.log/usr/local/ywtools/config/config.ini中account参数(ywtool dhcp这个命令用的,但是这个命令只能配置1个地址池,所以这里面的参数没什么意义) 二.配置…

生物素 PEG4 甲基四嗪,Biotin-PEG4-methyltetrazine,用于标记、追踪和分离特定的分子或细胞

生物素四聚乙二醇甲基四嗪&#xff0c;生物素 PEG4 甲基四嗪&#xff0c;Biotin-PEG4-methyltetrazine&#xff0c;用于标记、追踪和分离特定的分子或细胞 您好&#xff0c;欢迎来到新研之家 文章关键词&#xff1a;生物素四聚乙二醇甲基四嗪&#xff0c;生物素 PEG4 甲基四嗪…

RK Camera hal 图像处理

soc&#xff1a;RK3568 system:Android12 今天发现外接的USBCamera用Camera 2API打开显示颠倒&#xff0c;如果在APP 里使用Camera1处理这块接口较少&#xff0c;调整起来比较麻烦 RK Camera hal位置&#xff1a;hardware/interfaces/camera 核心的文件在&#xff1a; 开机…

windows 搭建nginx http服务

下载 下面链接直接点击下载&#xff0c;下载的就是包含rtmp服务器相关功能的&#xff0c;只不过需要配置下 Index of /download/ (ecsds.eu) nginx 1.7.11.3 Gryphon.zip直接点击额下面的连接即可下载 http://nginx-win.ecsds.eu/download/nginx%201.7.11.3%20Gryphon.zip …

Go语言Gin框架安全加固:全面解析SQL注入、XSS与CSRF的解决方案

前言 在使用 Gin 框架处理前端请求数据时&#xff0c;必须关注安全性问题&#xff0c;以防范常见的攻击。本文将探讨 Gin 框架中常见的安全问题&#xff0c;并提供相应的处理方法&#xff0c;以确保应用程序的稳健性和安全性。 处理前端请求数据时&#xff0c;确保应用程序的…

GaussDB新体验,新零售选品升级注入新思路【华为云GaussDB:与数据库同行的日子】

选品思维&#xff1a;低频VS高频 一个的商超&#xff0c;假设有50个左右的品类&#xff0c;每个品类下有2到10个不等的商品。然而如此庞大的商品&#xff0c;并非所有都是高频消费品。 结合自身日常的消费习惯&#xff0c;对于高频和低频的区分并不难。一般大型家电、高端礼盒…
最新文章