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

Truy vấn với LCA

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

root

Cho một cái cây có \(n\) nút và ta định nghĩa \(1\) là nút gốc của cây.

Bây giờ ta có \(q\) truy vấn, mỗi truy vấn có dạng: \(l_{i}\) \(r_{i}\) (\(1 \leq l_{i} \leq r_{i} \leq n\)).

Yêu cầu: Ứng với mỗi truy vấn, ta in ra LCA của tất cả các nút từ nút \(l_{i}\) đến nút \(r_{i}\)

Input

  • Dòng thứ nhất chứa số n (\(2 \leq n \leq 300000\)) - Thể hiện số nút của cây

  • \(n−1\) dòng tiếp theo, mỗi dòng gồm \(2\) số nguyên \(x,y\) - Thể hiện cạnh nối giữa hai đỉnh \(x\) và \(y\)

  • Dòng tiếp theo, chứa số \(q\) (\(1 \leq q \leq 300000\)) - Thể hiện số lượng truy vấn

  • \(q\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(l_{i}\), \(r_{i}\) (\(1 \leq l_{i} \leq r_{i}\leq n\))

Output

  • Ứng với mỗi truy vấn, in ra đáp án cần tìm.

Example

Test 1

Input
5
1 4
2 5
3 5
2 4
2
2 4
1 3
Output
4
1

Scoring

  • Subtask \(1\) (\(40\%\) số điểm): \(2 \leq n,q \leq 20\).

  • Subtask \(2\) (\(60\%\) số điểm): Không có ràng buộc gì thêm.

Dễ

Đếm chia hết

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

root

Cho ba số nguyên dương \(a, b, c\) và một giới hạn \(n\). Hãy đếm số lượng số nguyên dương không lớn hơn \(n\) sao cho số đó chia hết cho một trong ba số \(a, b, c\).

Input

Gồm một dòng duy nhất chứa bốn số nguyên lần lượt là \(n, a, b\) và \(c\) \((1 \le a, b, c \le n \le 10^{12})\).

Output

Gồm một số duy nhất là số lượng số thỏa mãn yêu cầu.

Example

Test 1

Input
10 2 5 7
Output
7
Dễ

Số đặc biệt

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

root

Hôm nay, cô giáo B dạy học sinh về dãy con tăng dài nhất.

Dãy con tăng dài nhất là dãy con nhận được từ dãy ban đầu bằng cách xóa đi một số phần tử sao cho phần tử đứng trước nhỏ hơn phần tử đứng sau.

Sau khi dạy xong, cô giáo B nhận thấy rằng một số số xuất hiện trong nhiều dãy con tăng dài nhất,
cô gọi đó là số đặc biệt.

Cho dãy số nguyên \(A = (a_1, a_2, \dots, a_n)\), trong đó các phần tử đôi một khác nhau
\((1 \le n \le 10^3,\ 1 \le a_i \le n)\).

Một số \(a_i\) được gọi là số đặc biệt nếu \(a_i\) thuộc ít nhất một dãy con tăng dài nhất của dãy \(A\).

Yêu cầu:
Hãy tìm tất cả các số đặc biệt của dãy \(A\).

\InputFile

  • Dòng đầu chứa số nguyên \(T\) \((1 \le T \le 10)\) --- số bộ test.
  • Với mỗi bộ test:

  • Dòng đầu chứa số nguyên \(n\).

  • Dòng thứ hai chứa \(n\) số nguyên \(a_1, a_2, \dots, a_n\).

\OutputFile

Với mỗi bộ test, in ra một dòng gồm các số đặc biệt theo thứ tự tăng dần,
không có khoảng trắng dư.

\Scoring

  • \(60\%\) số test: \(n \le 10^2\).
  • \(40\%\) số test còn lại: \(n \le 10^3\).

Example

Test 1

Input
2
7
1 2 3 7 4 5 6
5
1 4 3 2 5
Output
123456
12345
Dễ

Phân loại ký tự

100 điểm 25% AC 1 đã giải

staffagent

Cho một xâu \(S\) gồm các ký tự ASCII nằm trên cùng một dòng.

Hãy đếm số lượng ký tự thuộc từng nhóm sau:

  • Chữ cái thường: từ a đến z.
  • Chữ cái hoa: từ A đến Z.
  • Chữ số: từ 0 đến 9.
  • Ký tự đặc biệt: các ký tự không thuộc ba nhóm trên.

Input

  • Một dòng duy nhất chứa xâu \(S\) \((1 \le |S| \le 10^5)\).
  • Xâu có thể chứa dấu cách và các ký tự ASCII in được từ mã 32 đến 126.

Output

In ra bốn số nguyên theo thứ tự:

  • Số lượng chữ cái thường.
  • Số lượng chữ cái hoa.
  • Số lượng chữ số.
  • Số lượng ký tự đặc biệt.

Các số được phân cách bởi một dấu cách.

Example

Test 1

Input
AbcD12#@
Output
2 2 2 2
Note
  • Chữ cái thường: b, c.
  • Chữ cái hoa: A, D.
  • Chữ số: 1, 2.
  • Ký tự đặc biệt: #, @.

Test 2

Input
HelloWorld2025!
Output
8 2 4 1
Note

Xâu có 8 chữ cái thường, 2 chữ cái hoa, 4 chữ số và 1 ký tự đặc biệt.

Xem thêm