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

【QED】高昂的猫 Ⅰ

目录

  • 题目背景
    • 题目描述
      • 输入格式
      • 输出格式
    • 测试样例
    • 样例说明
    • 数据范围
  • 思路
  • 核心代码

题目背景

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这是小橘。因为它总是看起来很高傲,所以人送外号“高昂的猫”。

题目描述

"锕狗"的房间里放着 n n n ( 1 ≤ n ≤ 1 0 9 ) (1 \leq n \leq 10^9) (1n109)个猫粮罐头。它们从左到右排成一列,上面写有编号,分别为从 1 1 1 n n n的正整数。

"小橘"是一只贪吃的猫,每天它都会从左往右巡视一遍这些罐头,并且从中吃掉一些。

每天在巡视罐头的时候,小橘都会将它在最左侧遇到的第 1 1 1个罐头吃掉,然后每间隔 2 2 2个罐头吃掉 1 1 1个罐头。

锕狗想知道,这些罐头一共能供小橘这只肥猫吃几天?而编号为 x x x ( 1 ≤ x ≤ n ) (1 \leq x \leq n) (1xn)的超级大罐头将会在第几天被吃掉?请你帮他解决这两个问题。

输入格式

输入仅一行,包含两个用空格分隔开的正整数 n 、 x n、x nx,分别表示猫粮罐头的总数和超级大罐头的编号。

输出格式

输出仅一行,包含两个正整数。两个数之间由一个英文空格隔开,分别表示小橘吃完所有罐头所需的天数,以及吃掉编号为 x x x的罐头是在第几天。

测试样例

8 6
5 2

样例说明

锕狗的房间里一共放了 8 8 8个猫粮罐头。

小橘第 1 1 1天吃掉了编号为 1 、 4 、 7 1、4、7 147的罐头。

小橘第 2 2 2天吃掉了编号为 2 、 6 2、6 26的罐头,其中包括编号为 6 6 6的超级大罐头。

小橘第 3 3 3天吃掉了编号为 3 3 3的罐头。

小橘第 4 4 4天吃掉了编号为 5 5 5的罐头。

小橘第 5 5 5天吃掉了编号为 8 8 8的罐头。

数据范围

1 ≤ n ≤ 1 0 9 1 \leq n \leq 10^9 1n109

1 ≤ x ≤ n 1 \leq x \leq n 1xn

思路

这个题目询问了两个问题,第一个是罐头一共能吃几天,还有一个是编号为 x x x的罐头是第几天吃掉的,首先我们来看第一个问题:
假设有罐头编号分别为:
1、2、3、4、5、6、7、8、9、10
第一天:1 、2、3、4、5、6、7、8、9、10
第二天:2、3、5、6、8、9
第三天:3、5、8、9
第四天:5、8
第五天:8
加入对每一天进行重新编码:
第一天:1 、2、3、4、5、6、7、8、9、10
第二天:1 、2、3、4、5、6
第三天:1 、2、3、4
第四天:1 、2
第五天:1
我们可以发现:对于重新编码的数字,每一天都是吃掉除以上余1的数字,根据这个我们可以更新每一天吃掉了多少个罐头推理出剩下的罐头数量,然后又可以继续推理出下一次的情况,一直到没有罐头
对于第二个问题:我们可以推理编号 x x x是当前第几个数字,如果是除以三余1的数那么就是被吃掉的日子。

核心代码

#include <bits/stdc++.h>
#define debug(x) cout<<#x<<" = "<<x<<"\n"
using namespace std;
typedef long long LL;int main() {int n,x;cin>>n>>x;int a=0,b=0;while(n>0){n-=(n+2)/3;a++;}while(x>0){b++;if(x%3==1)break;x-=(x+2)/3;}cout<<a<<" "<<b;return 0;
}
http://www.lryc.cn/news/257054.html

相关文章:

  • Redis如何做内存优化?
  • 倪海厦:教你正确煮中药,发挥最大药效
  • C++学习笔记:继承
  • 音频/视频、信息和通信技术设备安全标准UL62368-1
  • macos下安装科研绘图软件Origin
  • 安全快速地删除 MySQL 大表数据并释放空间
  • 未使用 “严格模式“(js的问题)
  • Verilog基础:$random系统函数的使用
  • 数据库Delete的多种用法
  • 鸿蒙前端开发-构建第一个ArkTS应用(Stage模型)
  • 从零开始搭建链上dex自动化价差套利程序(12)
  • MySQL 数据库如何实现 XA 规范?
  • SVN修改已提交版本的日志方法
  • ArkUI组件--Text组件
  • mysql的组合查询
  • 短视频购物系统源码:构建创新购物体验的技术深度解析
  • 暴力破解漏洞
  • 前端成神之路-CSS基础选择器
  • Endnote在word中加入参考文献及自定义参考文献格式方式
  • LeetCode力扣每日一题(Java):28、找出字符串中第一个匹配项的下标
  • Java UDP 多人聊天室简易版
  • leetcode 100.相同的树
  • 2021年第十届数学建模国际赛小美赛A题气道阻力的评估解题全过程文档及程序
  • 内网环境安装K8S1.20.11版本集群
  • 【前端设计模式】之策略模式
  • JUC包(面试常问)
  • 文字处理工具Word mac软件特点
  • 把 Windows 11 装进移动硬盘:Windows 11 To Go
  • 11、pytest断言预期异常
  • Vue之数据绑定