Kho đề thi
Chọn đội tuyển

Chọn đội tuyển HSGQG Hải Phòng 2025 (Ngày 1 + Ngày 2)

Chọn đội tuyển HSG quốc gia cấp tỉnh, thành phố — https://oj.clue.edu.vn/contest/hp_tst_25/all

Cấu trúc đề và tiến độ

Đang tải tiến độ…

  • 1
    Câu 1 — RECT

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm
  • 2
    Câu 2 — GRAPH

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm
  • 3
    Câu 3 — DOMINO

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm
  • 4
    Câu 4 — SUBSEQ

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm
  • 5
    Câu 5 — TREE

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm
  • 6
    Câu 6 — MUL

    nâng cao

    Bộ chấm C++ đã qua kiểm chứng Linux: lời giải chạy 3 lần, 3 lời giải sai bị bắt. Chưa xác nhận AC trên OJ gốc.

    chưa có điểm

Chọn đội tuyển HSGQG Hải Phòng 2025 (Ngày 1 + Ngày 2)

Nguồn: Previously reviewed PDF copied without content changes
Chuyển nhập/xuất tệp sang stdin/stdout khi chạy trên website.

Câu 1. RECT

Cho n điểm trên mặt phẳng tọa độ. Điểm thứ i có tọa độ là (xi, yi) (các điểm có thể trùng nhau). Hải vẽ m hình chữ nhật lên mặt phẳng này, các hình chữ nhật có cạnh song song với một trong hai trục tọa độ. Hình chữ nhật thứ j có tọa độ góc trái dưới là (uj1, vj1) và tọa độ góc phải trên (uj2, vj2).

Yêu cầu: Với mỗi hình chữ nhật, hãy xác định số điểm nằm trên các cạnh của hình chữ nhật.

Input

  • Dòng đầu tiên chứa số nguyên dương n (n ≤ 3 × 105);
  • n dòng tiếp theo, dòng thứ i chứa hai số nguyên dương xi, yi là hoành độ và tung độ của điểm thứ i (1 ≤ xi, yi ≤ 109);
  • Dòng kế tiếp chứa số nguyên dương m (m ≤ 105);
  • m dòng tiếp theo, dòng thứ j chứa 4 số nguyên dương uj1, vj1, uj2, vj2 (1 ≤ uj1 ≤ uj2 ≤ 109; 1 ≤ vj1 ≤ vj2 ≤ 109) mô tả hình chữ nhật thứ j có tọa độ góc trái dưới là (uj1, vj1) và tọa độ góc phải trên là (uj2, vj2).

Output

  • Ghi ra m dòng, dòng thứ j ghi một số nguyên là số lượng điểm nằm trên các cạnh của hình chữ nhật thứ j (j = 1, 2, ⋯, m).

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Câu 2. GRAPH

Trên bản đồ thành phố HP có n địa điểm (đánh số từ 1 đến n) và m con đường hai chiều (đánh số từ 1 đến m), con đường i (1 ≤ i ≤ m) nối giữa hai địa điểm ui và vi (1 ≤ ui, vi ≤ n; ui ≠ vi) có độ nguy hiểm là pi và tiêu tốn nhiên liệu wi.

Hải muốn di chuyển từ địa điểm 1 đến địa điểm n sao cho độ nguy hiểm lớn nhất là nhỏ nhất và trong số những cách di chuyển có độ nguy hiểm lớn nhất là nhỏ nhất đó thì chọn cách đi tốn ít nhiên liệu nhất.

Yêu cầu: Tìm giá trị nhỏ nhất của độ nguy hiểm lớn nhất và lượng nhiên liệu ít nhất tương ứng.

Input

  • Dòng đầu tiên gồm hai số nguyên dương n, m (1 ≤ n ≤ 2 × 105, 1 ≤ m ≤ 3 × 105);
  • m dòng sau, mỗi dòng gồm bốn số nguyên dương ui, vi, pi, wi mô tả một con đường nối giữa hai địa điểm ui và vi; có độ nguy hiểm là pi (1 ≤ pi ≤ 1018) và tiêu tốn nhiên liệu wi (1 ≤ wi ≤ 5 × 1012).

Output

  • Ghi ra hai số nguyên theo thứ tự là giá trị nhỏ nhất của độ nguy hiểm lớn nhất khi di chuyển từ địa điểm 1 đến địa điểm n và lượng nhiên liệu ít nhất trong số tất cả các cách di chuyển có độ nguy hiểm lớn nhất là nhỏ nhất.

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Câu 3. DOMINO

Hải có n quân domino xếp thành một hàng ngang, đánh số từ trái sang phải từ 1 đến n. Một mặt của domino thứ i ghi số nguyên dương ai, mặt còn lại ghi số nguyên dương bi. Ban đầu, xếp các quân domino sao cho mặt ghi ai quay lên trên, mặt ghi bi quay xuống dưới.

Hải thực hiện thao tác sau k lần: Cho một số nguyên dương T, lật tất cả những quân domino có số được ghi ở mặt trên nhỏ hơn hoặc bằng T.

Yêu cầu: Sau khi thực hiện đủ k lần, hãy tính tổng n số được ghi trên mặt đang quay lên trên.

Input

  • Dòng đầu tiên gồm hai số nguyên dương n, k (1 ≤ n, k ≤ 2 × 105);
  • n dòng sau, dòng thứ i chứa hai số nguyên dương ai, bi (1 ≤ ai, bi ≤ 109) là hai số được ghi trên quân domino thứ i. Ban đầu, mặt ai được quay lên trên, còn mặt bi quay xuống dưới;
  • k dòng sau, dòng thứ i gồm một số nguyên dương Ti (1 ≤ Ti ≤ 109) là giá trị được chọn cho thao tác thứ i.

Output

  • Ghi ra một số nguyên dương duy nhất là tổng n số được ghi trên mặt quay lên trên của n quân domino.

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Câu 4. SUBSEQ

Cho hai dãy số nguyên A = (a1, a2, ⋯, an) và B = (b1, b2, ⋯, bn). Ta định nghĩa giá trị của đoạn con (i, j) với 1 ≤ i ≤ j ≤ n bằng biểu thức: ai × bj + ai+1 × bj-1 + ⋯ + aj × bi = ∑k=0j-i ai+k × bj-k

Ví dụ: Nếu A = (7, 2, 1, 4, 6) và B = (4, 5, 0, -2, 3) thì giá trị đoạn con (2, 4) bằng: 2 × (-2) + 1 × 0 + 4 × 5 = 16

Yêu cầu: Tính giá trị lớn nhất của một đoạn con.

Input

  • Dòng đầu tiên chứa số nguyên dương n (1 ≤ n ≤ 5000);
  • Dòng thứ hai chứa n số nguyên a1, a2, ⋯, an (|ai| ≤ 106);
  • Dòng thứ ba chứa n số nguyên b1, b2, ⋯, bn (|bi| ≤ 106). Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.

Output

  • Ghi ra một số nguyên duy nhất là giá trị lớn nhất của đoạn con tìm được.

Sample Input 1

5
7 2 1 4 6
4 5 0 -2 3

Sample Output 1

61

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Câu 5. TREE

Cho đồ thị vô hướng liên thông có n đỉnh (đánh số từ 1 đến n) và n - 1 cạnh. Mỗi cạnh có trọng số là số nguyên dương C. Trong số n đỉnh thì có đúng k đỉnh được đánh dấu.

Yêu cầu: Với mỗi đỉnh i (1 ≤ i ≤ n), hãy tìm đường đi ngắn nhất xuất phát từ đỉnh i và đi qua tất cả k đỉnh được đánh dấu.

Input

  • Dòng đầu tiên chứa hai số nguyên dương n, k (1 < n ≤ 2 × 105, 1 ≤ k ≤ n);
  • n - 1 dòng tiếp theo, mỗi dòng chứa ba số nguyên A, B, C (1 ≤ A, B ≤ n, 1 ≤ C ≤ 106) thể hiện có một cạnh nối đỉnh A với đỉnh B có trọng số bằng C;
  • k dòng cuối cùng, mỗi dòng chứa chỉ số của một đỉnh được đánh dấu. Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.

Output

  • Ghi ra n dòng, dòng thứ i là độ dài đường đi ngắn nhất xuất phát từ đỉnh i (1 ≤ i ≤ n) và đi qua tất cả k đỉnh được đánh dấu.

Sample Input 1

5 2
2 5 1
2 4 1
1 2 2
1 3 2
4
5

Sample Output 1

5
3
7
2
2

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Câu 6. MUL

Hải được Thầy giáo cho dãy a gồm n số nguyên dương a1, a2, ⋯, an. Ban đầu, a1 = a2 = ⋯ = an = 1. Hải thực hiện q thao tác dạng [L, R, k, x], mỗi thao tác nhân các phần tử ở các vị trí L + t × k (với 0 ≤ t ≤ ⌊ R-Lk ⌋) lên x lần.

Hãy in ra dãy a sau khi thực hiện đủ q thao tác. Vì các giá trị ai (1 ≤ i ≤ n) có thể rất lớn nên chỉ cần tính theo phần dư của phép chia ai cho 109 + 7.

Input

  • Dòng đầu tiên gồm hai số nguyên dương n, q (1 ≤ n ≤ 5 × 104, 1 ≤ q ≤ 2 × 105) lần lượt là độ dài dãy a và số lượng thao tác;
  • q dòng sau, mỗi dòng gồm bốn số nguyên dương L, R, k, x (1 ≤ L ≤ R ≤ n, 1 ≤ k ≤ n, 1 ≤ x ≤ 109) mô tả một thao tác. Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.

Output

  • Ghi ra trên một dòng gồm n số nguyên dương là dãy a sau q thao tác, các số cách nhau bởi dấu cách.

Sample Input 1

5 2
1 4 2 4
1 5 2 3

Sample Output 1

12 1 12 1 3

---

Ghi chú về bản chuyển thể

Nhập từ stdin và in ra stdout, không cần tạo tệp .INP/.OUT.

Trạng thái lời giải: C++ đã qua bộ kiểm thử cục bộ; chưa xác nhận AC trên OJ.

Không có thời lượng chính thức trong nguồn; phòng luyện tập dùng 180 phút, không mô phỏng thời lượng kỳ thi gốc. Nguồn chưa xác nhận đầy đủ điểm từng bài; dùng trọng số đều trên thang luyện tập 100, không phải thang điểm chính thức. Chuyển nhập/xuất tệp sang stdin/stdout; tiếng Việt là bản nguồn, bản tiếng Anh chưa dịch.
Nhóm Zalo