每日一道算法题day-three(备战蓝桥杯)

news2024/11/16 13:57:41

哈喽大家好,今天来给大家带来每日一道算法题系列第三天,让我们来看看今天的题目,一起备战蓝桥杯

题目:

小 Y的桌子上放着 n 个苹果从左到右排成一列,编号为从 11 到 n。

小苞是小 Y 的好朋友,每天她都会从中拿走一些苹果。

每天在拿的时候,小苞都是从左侧第 11 个苹果开始、每隔 22 个苹果拿走 11 个苹果。

随后小苞会将剩下的苹果按原先的顺序重新排成一列。

小苞想知道,多少天能拿完所有的苹果,而编号为 n 的苹果是在第几天被拿走的?

输入格式

输入的第一行包含一个正整数 n,表示苹果的总数。

输出格式

输出一行包含两个正整数,两个整数之间由一个空格隔开,分别表示小苞拿走所有苹果所需的天数以及拿走编号为 n 的苹果是在第几天。

数据范围

对于所有测试数据有:1≤n≤10^9

解题思路:

1 2 3 4 5 6 7 8

题里说每隔着两个苹果拿走一个,所以这段数字的变化规律就是:

2 3 5 6 8

3 5 8

5 8

5

8

首先观察这个题的数据范围,10的九次方,所以我们不能一一个一个的枚举每次拿的苹果,但我们可以一天一天的枚举

怎么样的一天一天的枚举呢,比如说我们现在有n个苹果,每天可以进行隔一个拿一个的操作,那么模拟下来我们每天大约拿三分之一的苹果,也就是三分之n(n/3)每隔两个苹果拿一个苹果,就是(n+2)/3的上取整,什么是上取整:

上取整:

关于上取整,我们可以通过一个函数来了解:

ceil函数:

功能:把一个小数向上取整
      即就是如果数是2.2 ,那向上取整的结果就为3.000000
原型:double ceil(doube x);
    参数解释:
        x:是需要计算的数
返回值:
    成功:返回一个double类型的数,此数默认有6位小数
    无失败的返回值
头文件:#include<cmath>

使用示范:

#include <iostream>
#include <cmath>

int main() {
	double i = ceil(2.2);
	double j = ceil(-2.2);
	printf("The ceil of 2.2 is %f\n", i);
	printf("The ceil of 2.2 is %f\n", j);
	system("pause");
	return 0;
}

 运行截图:

好的,现在什么是上取整都明白了,解题思路也十分清晰,上代码实操吧!!!

解题代码:

#include <iostream>
#include <cmath>
using namespace std;

int main() {
	int n;
	cin >> n;
	int cnt = 0, data = 0;
	while (n) {

		cnt++;
		if (!data && n % 3 == 1)
			data = cnt;
		n -= ceil((n + 2) / 3);
	}
	cout << data << " " << cnt;
	return 0;
}

代码就是根据思路写的,大家如果还有什么不明白的,就在评论里指出吧

觉得有帮助的同学点点关注吧,跟着作者一起备战蓝桥杯,拿下该死的奖!!!

明天见

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式篇---命令模式(结合spring+动态代理实现开闭)

文章目录 概念结构实例总结 概念 命令模式&#xff1a;将一个请求封装为一个对象&#xff0c;从而可用不同的请求对客户进行参数化&#xff0c;对请求排队或者记录请求日志&#xff0c;以及支持可撤销的操作。 现实生活中&#xff0c;我们用开关来控制一些电器的打开和关闭&am…

NLP电影情绪分析项目

https://machinelearningmastery.com/develop-word-embedding-model-predicting-movie-review-sentiment/ https://machinelearningmastery.com/prepare-movie-review-data-sentiment-analysis/ 本教程分为 5 个部分;他们是&#xff1a; 电影评论数据集数据准备训练嵌入层训练…

解决报错Exception encountered during context initialization

推荐阅读 智能化校园&#xff1a;深入探讨云端管理系统设计与实现&#xff08;一&#xff09; 智能化校园&#xff1a;深入探讨云端管理系统设计与实现&#xff08;二&#xff09; 文章目录 推荐阅读报错解决 报错 今天在测试一个类时&#xff0c;突然间报了以下错误。 juni…

调用第三方接口遇到的13大坑

前言 在实际工作中&#xff0c;我们经常需要在项目中调用第三方API接口&#xff0c;获取数据&#xff0c;或者上报数据&#xff0c;进行数据交换和通信。 那么&#xff0c;调用第三方API接口会遇到哪些问题&#xff1f;如何解决这些问题呢&#xff1f; 这篇文章就跟大家一起聊…

详解bookkeeper AutoRecovery机制

引言小故事 张三在一家小型互联网公司上班&#xff0c;由于公司实行的996&#xff0c;因此经常有同事“不辞而别”&#xff0c;为了工作的正常推进&#xff0c;团队内达成了某种默契&#xff0c;这种默契就是通过某个规则来选出一个同事&#xff0c;这个同事除了工作之余还有额…

大数据毕业设计:python房源数据爬虫分析预测系统+可视化 +商品房数据(源码+讲解视频)✅

毕业设计&#xff1a;2023-2024年计算机专业毕业设计选题汇总&#xff08;建议收藏&#xff09; 毕业设计&#xff1a;2023-2024年最新最全计算机专业毕设选题推荐汇总 &#x1f345;感兴趣的可以先收藏起来&#xff0c;点赞、关注不迷路&#xff0c;大家在毕设选题&#xff…

【算法】链表每k个节点反转 (js)

牛客链接&#xff1a;https://www.nowcoder.com/practice/b49c3dc907814e9bbfa8437c251b028e?tpId196&&tqId37080&rp1&ru/ta/job-code-total&qru/ta/job-code-total/question-ranking 本人题解&#xff1a; 有点绕&#xff0c;好好理解 /** function Li…

Layui弹窗带标签可切换图表的应用Demo

提供Layui弹窗带页签的Demo写法 文章目录 前言一、展示效果二、详细代码1.代码2.简单释义 总结 前言 之前因为有需求&#xff0c;需要开发Layui的弹出框&#xff0c;同时弹窗框需要支持&#xff0c;页签点击切换内容&#xff0c;特此整理了这一篇文章&#xff0c;提供给需要的…

D-Link DES-108 交换机

D-Link DES-108 交换机 1. 百兆交换机 8 口References ​ D-Link Corporation is a Taiwanese multinational networking equipment manufacturing corporation headquartered in Taipei, Taiwan. Taiwanese&#xff1a;adj. 台湾的 n. 台湾人 headquarter [hedkwɔ:tə]&#…

普中STM32-PZ6806L开发板(有点悲伤的故事)

简介 关于我使用 普中STM32-PZ6806L做了做了一些实验, 不小心输入12V&#xff0c;导致核心板等被烧坏, 为了利用电路和资源, 搭建了STM32F103CBT6并使用普中STM32-PZ6806L上面没有烧坏的模块的故事。 普中STM32-PZ6806L开发板 这块的STM32F103ZET6部分算是Closed了, 不准备换核…

OpenCASCADE MFC例子

OpenCASCADE MFC例子 说明 一直对OpenCASCADE一直都比较感兴趣&#xff0c;这个例子是我参考这位大神C幼儿园中班小朋友的专栏做出来的OpenCASCADE_C幼儿园中班小朋友的博客-CSDN博客 不过我用的是vcpkg的方式安装OpenCASCADE&#xff0c;这个需要注意一下&#xff0c;可能需…

VM与欧姆龙PLC通讯设置

1、欧姆龙PLC 进行网口通讯&#xff0c;协议用的Fins tcp&#xff0c;也可以用Fins UDP。 2、主要步骤如下&#xff1b; step1&#xff1a;设置IP地址、端口号默认是9600&#xff0c;根据需要设置寄存器首地址和寄存器数量 step2&#xff1a;鼠标移动到某个地址下&#xff0c…

Spring国际化的应用及原理详解

1. 简介 Spring国际化&#xff08;Spring Internationalization&#xff0c;简称i18n&#xff09;是Spring框架提供的一种机制&#xff0c;用于支持多语言的应用程序。它使得开发者能够轻松地在应用程序中实现不同语言的支持&#xff0c;从而满足全球化的需求。通过Spring国际…

算法训练第五十九天|503. 下一个更大元素 II、42. 接雨水

503. 下一个更大元素 II&#xff1a; 题目链接 给定一个循环数组 nums &#xff08; nums[nums.length - 1] 的下一个元素是 nums[0] &#xff09;&#xff0c;返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元素 是按数组遍历顺序&#xff0c;这个数字之…

Linux服务器的几种类型

Linux是一个开源操作系统内核&#xff0c;用作各种Linux发行版&#xff08;也称为“distros”&#xff09;的核心组件。由Linus Torvalds于1991年开发&#xff0c;Linux基于Unix操作系统。它以其稳定性、安全性和多功能性而闻名。 Linux的关键特点&#xff1a; 开源性质&#…

prometheus grafana linux服务器监控

文章目录 前传node-exporter安装配置promethues监控node节点grafana操作查看监控&#xff1a;外传 前传 prometheus grafana的安装使用&#xff1a;https://nanxiang.blog.csdn.net/article/details/135384541 本文说下监控nginx&#xff0c;prometheus grafana linux 安装配…

openGauss学习笔记-187 openGauss 数据库运维-常见故障定位手段

文章目录 openGauss学习笔记-187 openGauss 数据库运维-常见故障定位手段187.1 操作系统故障定位手段187.2 网络故障定位手段187.3 磁盘故障定位手段187.4 数据库故障定位手段 openGauss学习笔记-187 openGauss 数据库运维-常见故障定位手段 187.1 操作系统故障定位手段 查询…

【AI视野·今日Robot 机器人论文速览 第六十六期】Tue, 31 Oct 2023

AI视野今日CS.Robotics 机器人学论文速览 Tue, 31 Oct 2023 Totally 39 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers DEFT: Dexterous Fine-Tuning for Real-World Hand Policies Authors Aditya Kannan, Kenneth Shaw, Shikhar Bahl, Pragna Ma…

Ribbon客户端负载均衡

简介 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。 简单的说&#xff0c;Ribbon是Netflix发布的开源项目&#xff0c;主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时&#xff0c;重试等…

【排序算法总结】

目录 1. 稳点与非稳定排序2. 冒泡排序3. 简单选择排序4. 直接插入排序5. 快排6. 堆排7. 归并 1. 稳点与非稳定排序 不稳定的&#xff1a;快排、堆排、选择原地排序&#xff1a;快排也是非原地排序&#xff1a;归并 和三个线性时间排序&#xff1a;桶排序 &#xff0c;计数&…