CF622A.Infinite Sequence

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Infinite Sequence

题目描述

给你一个无穷整数序列:1,1,2,1,2,3,1,2,3,4,1,2,3,4,51,1,2,1,2,3,1,2,3,4,1,2,3,4,5\cdots。这个数列的建立过程如下:首先写出数字 11 ,然后写出从 1122 的数字,然后写出从 1133 的数字,然后写出从 1144 的数字,以此类推。请注意,序列中包含的是数字,而不是数位。例如,数字 1010 首次出现在序列中的 5555 位置(元素的数字从 11 开始)。

请找出序列中第 nn 位上的数字。

输入格式

一行包含一个整数 nn1n10141\le n\le10^{14}),表示要查找的数字的位置。

请注意,给定的数字太大,因此应该使用 6464 位整数类型来存储。在 C++ 中,您可以使用 long long 整数类型;在 Java 中,您可以使用 long 整数类型。

输出格式

输出序列中第 nn 位的元素(元素从 11 开始编号)。

样例

3
2
5
2
10
4
55
10
56
1

在线编程 IDE

建议全屏模式获得最佳体验