| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| A | Dãy đặc biệt | 100 (p) | 1.0s | 256M |
| B | Bầu cử | 100 (p) | 1.0s | 256M |
| C | Số ảo tưởng | 100 (p) | 1.0s | 256M |
| D | Đường đi ngắn thứ 2 | 100 (p) | 1.0s | 256M |
| E | Kết nối K đỉnh | 100 (p) | 1.0s | 256M |
Cho một dãy số nguyên dương gồm \(n\) phần tử: \(a_1, a_2, \dots, a_n\). Một phần tử \(a_i\) được gọi là đặc biệt nếu tồn tại một phần tử khác \(a_j\) \((i \ne j)\) sao cho \(a_i + a_j\) là một số chính phương.
Đếm số lượng phần tử đặc biệt trong dãy.
Test 1
5
1 3 5 6 10
4
Các cặp thỏa mãn:
Trong một cuộc bầu cử, có \(N\) đảng và tổng cộng \(V\) phiếu. Hiện tại đã kiểm được một phần phiếu, mỗi đảng \(i\) có \(a_i\) phiếu và tổng không vượt quá \(V\). Số phiếu còn lại là \(V - \sum a_i\).
Bạn chọn một đảng \(X\) và có quyền phân phối toàn bộ số phiếu còn lại cho các đảng bất kỳ, có thể dồn hết cho một đảng hoặc chia nhỏ.
Sau khi phân phối, gọi \(b_i\) là số phiếu cuối cùng của đảng \(i\) và \(s_i\) là số ghế đảng \(i\) đã nhận được tại thời điểm đang xét. Ban đầu mọi \(s_i = 0\).
\(M\) ghế được chia theo phương pháp D'Hondt với ngưỡng \(5\%\):
Hãy xác định số ghế lớn nhất mà đảng \(X\) có thể đạt được nếu phân phối số phiếu còn lại một cách tối ưu.
Test 1
20 4 5 1
4 3 6 1
3
Vào một ngày đẹp trời, khi ánh nắng nhẹ chiếu qua từng tán lá, đang thong thả đi dạo trong khu vườn quen thuộc của mình. Không khí yên bình khiến cảm thấy vô cùng thư giãn và thầm nghĩ trên đời sao lại có nhiều người ảo tưởng vậy nhỉ?
Nhưng vừa nói xong, một cơn gió lạnh thổi qua.
Phía sau bụi cây, có một người lạ xuất hiện. Tên đó tự xưng tên là .
Chưa kịp hiểu chuyện gì xảy ra, đã bị bắt vào một không gian tối tăm, xung quanh là những bức tường phủ kín bởi vô số con số kỳ lạ.
cười lớn và nói:
Ta sẽ cho ngươi một số \(n\).
Nhiệm vụ của người là tìm số lượng số \(x\) là số ảo tưởng thoả mãn \(1 ≤ x ≤ n\), \(x\) là số ảo tưởng nếu \(x\) thoả mãn 2 điều kiện:
Yêu cầu: Nhập vào một số nguyên dương \(n\). Hãy tính số lượng số ảo tưởng từ \(1\) đến \(n\).
Test 1
20
10
Các số ảo tưởng là: \(1, 2, 3, 4, 5, 6, 7, 8, 9, 20\)
chuyển nhà đến một trang trại nhỏ, nhưng cậu ấy thường xuyên quay lại trang trại của bạn bè. Vì rất thích phong cảnh ven đường và không muốn chuyến đi kết thúc quá nhanh, mỗi lần đi từ trang trại \(1\) đến trang trại \(N\), chọn đường đi ngắn thứ hai thay vì đường đi ngắn nhất.
Cho một đồ thị vô hướng có trọng số gồm \(N\) đỉnh và \(M\) cạnh. Cạnh thứ \(i\) nối hai đỉnh \(u_i, v_i\) và có độ dài \(w_i\).
Một đường đi từ \(1\) đến \(N\) có thể đi qua cùng một đỉnh hoặc cùng một cạnh nhiều lần.
Hãy tìm độ dài của đường đi ngắn thứ hai nghiêm ngặt từ \(1\) đến \(N\), tức là độ dài nhỏ nhất trong các đường đi có độ dài lớn hơn nghiêm ngặt độ dài đường đi ngắn nhất từ \(1\) đến \(N\).
Test 1
4 4
1 2 100
2 4 200
2 3 250
3 4 100
450
Đường đi ngắn nhất là \(1 \to 2 \to 4\) với độ dài \(300\).
Đường đi ngắn thứ hai là \(1 \to 2 \to 3 \to 4\) với độ dài \(100 + 250 + 100 = 450\).
Test 2
4 5
1 2 1
2 4 1
1 3 1
3 4 1
2 3 5
4
Cho một cây gồm \(n\) đỉnh, đánh số từ \(1\) đến \(n\). Mỗi đỉnh \(i\) có trọng số không âm \(a_i\). Mỗi cạnh có trọng số không âm \(w_e\).
Bạn cần chọn đúng \(k\) đỉnh. Giá trị nhận được bằng tổng trọng số của các đỉnh được chọn, trừ đi tổng trọng số nhỏ nhất của các cạnh cần dùng để nối tất cả các đỉnh được chọn thành một cây con liên thông.
Nói cách khác, với tập \(S\) gồm đúng \(k\) đỉnh được chọn, gọi \(E(S)\) là tập cạnh của cây con nhỏ nhất chứa tất cả các đỉnh trong \(S\). Cần tối đa hóa:
Test 1
5 3
1 2 3 4 5
1 2 1
1 3 1
3 4 1
3 5 1
10
Test 2
8 4
26 6 46 39 34 44 42 32
1 2 20
1 3 6
2 4 24
2 5 26
3 6 29
3 7 27
4 8 24
96