关于做网站流程,怎么学seo基础,wordpress点文章标题怎么出现错误,wordpress新闻抓取插件目录 题目背景题目描述输入格式输出格式 测试样例样例说明数据范围 思路核心代码 题目背景 这是小橘。因为它总是看起来很高傲#xff0c;所以人送外号“高昂的猫”。
题目描述
锕狗的房间里放着 n n n ( 1 ≤ n ≤ 1 0 9 ) (1 \leq n \leq 10^9) (1≤n≤109)个… 目录 题目背景题目描述输入格式输出格式 测试样例样例说明数据范围 思路核心代码 题目背景 这是小橘。因为它总是看起来很高傲所以人送外号“高昂的猫”。
题目描述
锕狗的房间里放着 n n n ( 1 ≤ n ≤ 1 0 9 ) (1 \leq n \leq 10^9) (1≤n≤109)个猫粮罐头。它们从左到右排成一列上面写有编号分别为从 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) (1≤x≤n)的超级大罐头将会在第几天被吃掉请你帮他解决这两个问题。
输入格式
输入仅一行包含两个用空格分隔开的正整数 n 、 x n、x n、x分别表示猫粮罐头的总数和超级大罐头的编号。
输出格式
输出仅一行包含两个正整数。两个数之间由一个英文空格隔开分别表示小橘吃完所有罐头所需的天数以及吃掉编号为 x x x的罐头是在第几天。
测试样例
8 65 2样例说明
锕狗的房间里一共放了 8 8 8个猫粮罐头。
小橘第 1 1 1天吃掉了编号为 1 、 4 、 7 1、4、7 1、4、7的罐头。
小橘第 2 2 2天吃掉了编号为 2 、 6 2、6 2、6的罐头其中包括编号为 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 1≤n≤109 1 ≤ x ≤ n 1 \leq x \leq n 1≤x≤n
思路
这个题目询问了两个问题第一个是罐头一共能吃几天还有一个是编号为 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;cinnx;int a0,b0;while(n0){n-(n2)/3;a;}while(x0){b;if(x%31)break;x-(x2)/3;}couta b;return 0;
}