Đ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.

Dễ

Hiệu lớn nhất

100 điểm 0% AC 0 đã giải

root

Bạn được cho một mảng gồm \(n\) số nguyên. Mục tiêu của bạn là tìm hai chỉ số \(i\) và \(j\) trong mảng sao cho \(i\) nhỏ hơn \(j\), và hiệu \(a[j] - a[i]\) đạt giá trị lớn nhất.

Input

Dữ liệu vào được cung cấp từ đầu vào chuẩn theo định dạng sau:

  • Dòng đầu tiên chứa một số nguyên dương \(n\) (\(2 \le n \le 10^5\)).
  • Dòng thứ hai chứa \(n\) số nguyên \(a_1, a_2, \ldots, a_n\) (\(|a_i| \le 10^3\)).

Output

In ra một số nguyên duy nhất là giá trị lớn nhất của hiệu \(a[j] - a[i]\) tìm được.

Example

Test 1

Input
3
1 2 3
Output
2
Dễ

Bao lồi

100 điểm 0% AC 0 đã giải

root

Giáo sư hải mã Plato đã giao cho các sinh viên lập trình của mình thực hiện một bài tập thực hành sau:

Các sinh viên phải xây dựng một cấu trúc dữ liệu hỗ trợ việc quản lý Bao lồi (Convex Hull) trên một tập hợp điểm \(S\) cho trước. Chương trình nhận \(q\) truy vấn thuộc hai loại:

  • Thêm điểm: Thêm một điểm với tọa độ \((x, y)\) vào tập hợp \(S\). Lưu ý rằng trong trường hợp này, bao lồi của \(S\) có thể thay đổi hoặc giữ nguyên.
  • Kiểm tra: Xác định xem một điểm với tọa độ \((x, y)\) có thuộc khu vực được giới hạn bởi bao lồi hay không, bao gồm cả biên (đường bao).

Tất cả các sinh viên đều hoàn thành nhiệm vụ. Còn bạn thì sao?

Input

  • Dòng đầu tiên chứa một số nguyên \(q\) (\(4 \le q \le 10^5\)) --- số lượng truy vấn.
  • Sau đó là \(q\) dòng theo định dạng: "\(t\) \(x\) \(y\)", trong đó \(t\) là loại truy vấn (1 hoặc 2), và \((x, y)\) là tọa độ của điểm (\(-10^6 \le x, y \le 10^6\), \(x\) và \(y\) là các số nguyên).

Output

Với mỗi truy vấn loại 2, in ra một chuỗi chứa "YES", nếu điểm nằm bên trong bao lồi hoặc trên biên của nó. Ngược lại, in ra "NO".

Example

Test 1

Input
8
1 0 0
1 2 0
1 2 2
2 1 0
1 0 2
2 1 1
2 2 1
2 20 -1
Output
YES
YES
YES
NO

Scoring

  • Subtask \(1\) (\(40\%\) số điểm) : \(q \leq 500\).
  • Subtask \(2\) (\(30\%\) số điểm) : các thao tác loại \(1\) luôn xuất hiện trước các thao tác loại \(2\).
  • Subtask \(3\) (\(30\%\) số điểm) : không có ràng buộc gì thêm.
Dễ

Cặp số may mắn

100 điểm 0% AC 0 đã giải

root

\(2\) số nguyên dương khác nhau được gọi là cặp số may mắn khi chúng có chung tập ước nguyên tố.

Ví dụ, \(18\) có tập ước nguyên tố là \(2, 3\), \(12\) có tập ước nguyên tố là \(2, 3\), vì thế nên \(18\) và \(12\) là cặp số may mắn. Nhưng \(10\) và \(6\) thì ngược lại, vì \(10\) có tập ước nguyên tố là \(2, 5\), \(6\) có tập ước nguyên tố là \(2, 3\), hai tập này khác nhau.

Yêu cầu: Cho hai số nguyên dương \(L, R (L <= R)\).

Đếm số cặp số \((u, v)\) \((L <= u < v <= R)\) sao cho \(u, v\) là cặp số may mắn.

Input

Một dòng chứa hai số nguyên dương \(L, R\).

Output

Kết quả bài toán

Example

Test 1

Input
1 10
Output
4
Note

Có \(4\) cặp số may mắn đó là: \((2, 4), (2, 8), (3, 9), (4, 8)\).

Scoring

\(20\%\) số test có \(L, R <= 10^2\).

\(20\%\) số test có \(L, R <= 10^3\).

\(20\%\) số test có \(L, R <= 10^6, R - L + 1 <= 10^5\).

\(20\%\) số test có \(L, R <= 10^6\).

\(20\%\) số test còn lại \(L, R <= 10^7\).

Dễ

Bài 2 : Ước nguyên tố (6.0 điểm)

100 điểm 0% AC 0 đã giải

root

Số tự nhiên \(m\) được gọi là ước nguyên tố của số nguyên dương \(n\) nếu \(n\) chia hết cho \(m\) và \(m\) là số nguyên tố.

Yêu cầu: Cho \(Q\) truy vấn, mỗi truy vấn gồm ba số nguyên \(a,b,k\). Với mỗi truy vấn, hãy xác định số lượng các số nguyên \(x\) thỏa mãn: \(a \le x \le b\) và có số lượng ước nguyên tố không nhỏ hơn \(k\).

Input

Vào từ tệp văn bản BAI2.INP có cấu trúc:

  • Dòng thứ nhất chứa số nguyên dương \(Q\) là số lượng truy vấn \((1 \le Q \le 10^5)\).
  • \(Q\) dòng tiếp theo, mỗi dòng chứa ba số nguyên \(a,b,k\) \((1 \le a \le b \le 10^6; 0 \le k \le 7)\).

Output

Ghi ra tệp văn bản BAI2.OUT gồm \(Q\) dòng, mỗi dòng ghi một số nguyên duy nhất là kết quả tương ứng với mỗi truy vấn.

Example

Test 1

Input
1
25 30 2
Output
3
Note

Giải thích: Từ 25 đến 30 có 3 số có từ 2 ước nguyên tố trở lên đó là 26, 28 và 30.
Cụ thể:

  • 26 có 2 ước nguyên tố là 2 và 13
  • 28 có 2 ước nguyên tố là 2 và 7
  • 30 có 3 ước nguyên tố là 2, 3 và 5

Scoring

  • Có \(60\%\) số test ứng với \(60\%\) số điểm của bài thỏa mãn: \(Q = 1\); \(1 \le a \le b \le 10^3\).
  • Có \(20\%\) số test khác ứng với \(20\%\) số điểm của bài thỏa mãn: \(Q = 1\); \(10^3 < a \le b \le 10^6\).
  • \(20\%\) số test còn lại ứng với \(20\%\) số điểm của bài không có ràng buộc gì thêm.
Xem thêm