Bài 1: Dãy vô hạn (TS10 Vĩnh Phúc thi thử - 2026)

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1300 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Xét một dãy vô hạn \((a_1, a_2, a_3, \dots)\) gồm các số nguyên dương, được xây dựng theo các nhóm liên tiếp như sau:

  • Nhóm thứ \(1\) gồm \(1\) khối, khối này có \(1\) phần tử mang giá trị \(1\).
  • Nhóm thứ \(2\) gồm \(2\) khối, mỗi khối có \(2\) phần tử giống nhau, khối đầu chứa giá trị \(2\), khối sau chứa giá trị \(3\).
  • Nhóm thứ \(3\) gồm \(3\) khối, mỗi khối có \(3\) phần tử giống nhau, giá trị trong các khối lần lượt là \(4, 5, 6\).
  • Tổng quát, nhóm thứ \(k\) gồm \(k\) khối, mỗi khối có \(k\) phần tử giống nhau, các giá trị là các số nguyên liên tiếp tăng dần tiếp nối từ nhóm trước.

Dãy bắt đầu như sau:
\([1], [2, 2 \mid 3, 3], [4, 4, 4 \mid 5, 5, 5 \mid 6, 6, 6], [7, 7, 7, 7 \mid 8, 8, 8, 8 \mid 9, 9, 9, 9 \mid 10, 10, 10, 10], \dots\)

Yêu cầu: Tìm giá trị của phần tử thứ \(n\) trong dãy.

Input

  • Một dòng duy nhất chứa số nguyên \(n\) (\(1 \le n \le 10^{18}\)).

Output

  • In ra một số nguyên duy nhất là giá trị \(a_n\).

Example

Test 1

Input
3
Output
2
Note

\(a_3\) là số thứ \(2\) trong khối đầu tiên của nhóm \(2 \implies a_3 = 2\).

Test 2

Input
13
Output
6
Note

\(a_{13}\) là số thứ \(2\) trong khối thứ \(3\) của nhóm \(3 \implies a_{13} = 6\).

Scoring

  • Subtask \(1\) (\(30\%\) số điểm): \(n \le 100\).
  • Subtask \(2\) (\(25\%\) số điểm): \(n \le 10^6\).
  • Subtask \(3\) (\(15\%\) số điểm): \(n \le 10^{12}\).
  • Subtask \(4\) (\(15\%\) số điểm): \(n \le 10^{14}\).
  • Subtask \(5\) (\(15\%\) số điểm): \(n \le 10^{18}\).

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.