求助两道题【违规紫衫】
  • 板块灌水区
  • 楼主xjngbnn
  • 当前回复8
  • 已保存回复8
  • 发布时间2021/4/23 21:00
  • 上次更新2023/11/5 00:12:18
查看原帖
求助两道题【违规紫衫】
492167
xjngbnn楼主2021/4/23 21:00

第一道:

翔翔和蕊蕊购买了 nn 颗糖果,他们决定一起把糖果吃掉。

他们制定了以下规则:首先确定一个整数 kk,然后两人轮流吃糖果。对于每一轮,翔翔先吃掉 k 颗糖果(如果糖果的数量不足 kk,则翔翔会吃完糖果),然后蕊蕊吃掉余下糖果的 10%。重复这一过程,直至糖果吃完。

注意,对于蕊蕊来说,如果糖果的数量无法被 10 整除,则 10% 的计算结果向下取整。例如,如果有 97 颗糖果,则蕊蕊会吃掉其中的 9 颗。而如果糖果的数量小于 10 颗,则蕊蕊一颗也吃不到T^T。

找出一个最小的整数 kk,使得翔翔可以吃掉 nn 颗糖果中至少一半的糖果,输出这一 kk 的值。

第一行有一个整数 nn (1 ≤ nn ≤ 1E18),表示一开始糖果的数量。

输出一个整数,表示在满足条件的情况下,最小可能的 kk 值。

第二道:

有这么一个字符串序列

S[1]="1",S[2]="2",S[3]="3",...

Si就是整数i转化成字符串之后的字符串。

再定义字符串序列B[n]=∑ni=1S[i]

例如B[1]="1",B[2]="12",B[3]="123",...

把所有B[i]按照顺序拼接起来,就得到了一个新的字符串T,这个字符串前80位如下:11212312341234512345612345671234567812345678912345678910123456789101112345678910

现在给定一个整数n,要求找出字符串T第n位是什么数字。

单组测试数据。 输入一个整数nn (1 ≤ nn10000001000000)。

输出一个整数,表示答案。

想了半天了都不会,只知道要用二分,谁能教一下我?谢谢

2021/4/23 21:00
加载中...