Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập

Bài được chọn theo nhịp luyện tập của bạn, cùng mọi bài mới vừa lên.

root

Bãi đỗ xe

100 điểm

Có một bãi đỗ xe hình vòng tròn gồm \(n\) chỗ trống, được đánh số từ \(1\) đến \(n\).
Có \(n\) chiếc xe lần lượt đi vào bãi để đỗ.

Chiếc xe thứ \(i\) muốn đỗ ở vị trí \(p_i\).
Nếu vị trí đó đã bị chiếm, xe sẽ tiếp tục di chuyển theo chiều tăng của chỉ số (theo vòng tròn) cho đến khi gặp chỗ trống đầu tiên, rồi dừng lại ở đó.

Yêu cầu: Xác định vị trí mà mỗi xe sẽ đỗ.

\InputFile

  • Dòng đầu tiên chứa số nguyên \(n\) \((1 \le n \le 5 \times 10^5)\).
  • Dòng thứ hai chứa \(n\) số nguyên \(p_1, p_2, \ldots, p_n\) \((1 \le p_i \le n)\).

\OutputFile

  • In ra \(n\) số nguyên. Số thứ \(i\) là vị trí bãi đỗ của chiếc xe thứ \(i\).

\Scoring

  • Có \(40\%\) số điểm ứng với \(n \le 1000\).

Example

Test 1

Input
3
2 2 2
Output
2 3 1 

root

Bài kiểm tra 9

100 điểm


Bạn đang biên đạo một chương trình xiếc với nhiều động vật khác nhau. Đối với một hành động, bạn được cung cấp hai con chuột túi trên một đường thẳng và cùng nhảy về một hướng.

  • Con chuột túi đầu tiên bắt đầu tại vị trí \(x1\) và di chuyển với tốc độ \(v1\) mét mỗi lần nhảy.
  • Con chuột túi thứ hai bắt đầu tại vị trí \(x2\) và di chuyển với tốc độ \(v2\) mét mỗi lần nhảy.
    mét trên mỗi lần nhảy.

Bạn đang thắc mắc liệu hai con chuột túi này có gặp nhau tại một điểm trong quá trình nhảy hay không. Nếu có thể, in ra YES, nếu không thì in ra NO.

Input

Nhập vào lần lượt \(4\) số nguyên \(x1, v1, x2, v2\).

Output

In ra xem hai con chuột túi này có gặp nhau được hay không.

Example

Test 1

Input
0 3 4 2
Output
YES
Note

root

Lũy thừa 2

100 điểm

Cho dãy số gồm \(n\) số nguyên dương. Đếm số cặp \(i\), \(j\) \((i < j)\) sao cho \(a_{i} + a_{j} = 2 ^ x\) \((x > 0)\).

Input

Dòng đầu tiên là số nguyên dương \(n\). \((n \leq 10^5)\).

Dòng thứ 2 gồm \(n\) số nguyên dương \(a_{1}, a_{2}, ..., a_{n}\) \((a_{i} \leq 10^9)\).

Output

Kết quả bài toán

Example

Test 1

Input
4
7 3 2 1
Output
2

Test 2

Input
3
1 1 1
Output
3

Scoring

\(60\%\) số điểm có \(n \leq 10^3\).

\(40\%\) còn lại là ràng buộc gốc.

root

Cắt đoạn dây

100 điểm

Bạn được cung cấp \(N\) đoạn dây, với \(1 \le N \le 10^5\). Đoạn dây thứ \(i\) có độ dài \(a_i\), với \(0 < a_i \le 10^9\).

Cần cắt các đoạn dây này thành \(K\) đoạn có độ dài bằng nhau, với \(K\) là một số nguyên dương. Các đoạn dây ban đầu có thể không cần được sử dụng hết. Phần thừa từ các đoạn dây bị cắt có thể bỏ đi.

Hãy xác định độ dài lớn nhất của đoạn dây mà bạn có thể thu được sau khi cắt, sao cho có thể tạo ra ít nhất \(K\) đoạn như vậy. Nếu không có cách nào để cắt được \(K\) đoạn có độ dài nguyên dương, hãy in ra \(0\).

Input

Dữ liệu vào được cung cấp từ bàn phím theo định dạng sau:

  • Dòng đầu tiên chứa hai số nguyên dương \(N\) và \(K\) (\(N \le 10^5, K \le 10^{14}\)).
  • \(N\) dòng tiếp theo, mỗi dòng chứa một số nguyên \(a_i\), là độ dài của đoạn dây thứ \(i\).

Output

In ra một dòng duy nhất chứa độ dài lớn nhất của đoạn dây có thể nhận được.

Example

Test 1

Input
4 11
802
743
547
539
Output
200
Xem thêm