Điều hướng chính

Nhắn tin NQ Coding

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ễ

Khoảng cách từ nguồn

100 điểm 33% AC 2 đã giải

root

Cho một đồ thị có hướng có \(N\) đỉnh và \(M\) cạnh. Sử dụng thuật toán BFS để tính và in ra khoảng cách (số cạnh) từ đỉnh nguồn \(S\) đến tất cả các đỉnh khác trong đồ thị.

Input

  • Dòng đầu tiên là ba số nguyên dương \(N, M, S\) (\(1 \leq N \leq 10^5, 1 \leq M \leq 10^5, 1 \leq S \leq N\)).
  • \(M\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(u, v\) mô tả một cạnh.

Output

\(N\) dòng, dòng thứ \(i\) chứa khoảng cách từ đỉnh \(S\) đến đỉnh \(i\). Nếu không có đường đi, in ra -1.

Example

Test 1

Input
5 3 1
1 2
2 3
4 5
Output
0
1
2
-1
-1
Dễ

Ma trận

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

root

President K rất thích giải các mê cung. Ông có một bản đồ dạng lưới hình chữ nhật gồm \(R\) hàng và \(C\) cột.
Mỗi ô trong lưới được tô màu trắng hoặc đen.

Ô ở hàng thứ \(i\) từ trên xuống và cột thứ \(j\) từ trái sang phải được gọi là ô \((i,j)\).

President K chỉ có thể di chuyển qua các ô màu trắng và không thể đi qua các ô màu đen.
Cụ thể, việc giải mê cung được thực hiện như sau:

  • Chọn một ô trắng \((S_r, S_c)\) làm điểm bắt đầu và một ô trắng \((G_r, G_c)\) làm đích.
  • Từ một ô trắng, có thể di chuyển sang một ô trắng kề cạnh theo một trong bốn hướng: trên, dưới, trái, phải.

Hiện tại, điểm bắt đầu và điểm đích đã được cố định.
Tuy nhiên, trong một số cấu hình màu của lưới, có thể không tồn tại đường đi chỉ qua các ô trắng từ điểm bắt đầu đến điểm đích.

President K có một con dấu hình vuông kích thước \(N \times N\).
Mỗi lần thực hiện một thao tác, ông chọn hai số nguyên \(a, b\) sao cho
\(1 \le a \le R - N + 1\) và \(1 \le b \le C - N + 1\),
sau đó tô trắng toàn bộ các ô \((i,j)\) thỏa mãn:
$
a \le i \le a + N - 1,\quad b \le j \le b + N - 1.
$

Do việc sử dụng con dấu khiến tay bị bẩn, President K muốn tối thiểu hóa số lần thao tác sao cho tồn tại một đường đi từ ô bắt đầu đến ô đích chỉ qua các ô trắng.

Hãy xác định số thao tác ít nhất cần thực hiện.

\InputFile

  • Dòng đầu chứa ba số nguyên \(R, C, N\) \((1 \le N \le R \le C)\).
  • Dòng thứ hai chứa hai số nguyên \(S_r, S_c\) --- tọa độ ô bắt đầu.
  • Dòng thứ ba chứa hai số nguyên \(G_r, G_c\) --- tọa độ ô đích.
  • \(R\) dòng tiếp theo, dòng thứ \(i\) là một xâu độ dài \(C\) gồm các ký tự . hoặc #,
    trong đó . biểu thị ô trắng và # biểu thị ô đen.

Dữ liệu đảm bảo rằng ô bắt đầu và ô đích đều là ô trắng.

\OutputFile
In ra một số nguyên --- số thao tác ít nhất cần thực hiện để tồn tại đường đi từ ô bắt đầu đến ô đích chỉ qua các ô trắng.

Trong tất cả mọi trường hợp

  • \(R \times C \le 6\,000\,000\).
  • \(1 \le S_r, G_r \le R\).
  • \(1 \le S_c, G_c \le C\).
  • \((S_r, S_c) \ne (G_r, G_c)\).

\Scoring

  • Subtask 1 (11 điểm): \(N = 1\), \(R \times C \le 1\,500\,000\).
  • Subtask 2 (19 điểm): \(R \times C \le 1\,000\).
  • Subtask 3 (15 điểm): đáp án không vượt quá \(10\), \(R \times C \le 1\,500\,000\).
  • Subtask 4 (19 điểm): \(R \times C \le 60\,000\).
  • Subtask 5 (20 điểm): \(R \times C \le 1\,500\,000\).
  • Subtask 6 (16 điểm): không có ràng buộc thêm.

Example

Test 1

Input
2 4 2
1 1
2 4
.###
###.
Output
1

Test 2

Input
6 6 1
1 6
6 1
..#.#.
##.###
####.#
...###
##.##.
.#.###
Output
4
Dễ

Câu 4: Cắt hoa (5.0 điểm)

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

root

Vườn hoa của nhà Minh nở rộ \(N\) khóm hoa đẹp, khóm hoa thứ \(i\) có \(A_i\) bông hoa. Do nhu cầu của dịp lễ 8/3 lớn nên người lái buôn muốn mua càng nhiều hoa của vườn càng tốt. Tuy nhiên địa hình vườn nhà Minh không thể cắt hoa của \(K\) khóm hoa liên tiếp, vì vậy Minh cần tìm cách cắt hoa sao cho cắt được tổng số bông hoa là nhiều nhất có thể.

Yêu cầu: Hãy xác định số lượng bông hoa nhiều nhất có thể cắt được.

Input

Đọc từ file FCUT.INP gồm:

  • Dòng đầu tiên chứa hai số nguyên dương \(N\) và \(K\) \((2 \le K \le N \le 10^5)\);
  • Dòng thứ hai chứa \(N\) số nguyên dương \(A_1, A_2, A_3, \dots, A_N\) \((1 \le A_i \le 10^9)\) lần lượt là số bông hoa của mỗi khóm hoa.

Output

Ghi ra file FCUT.OUT một số nguyên là tổng số bông hoa nhiều nhất có thể cắt được.

Example

Test 1

Input
7 3
2 4 1 5 3 1 6
Output
20
Note

Giải thích:

  • Ví dụ 1: Vì không thể cắt hoa ở 3 khóm hoa liên tiếp nên Minh sẽ cắt hoa ở những khóm hoa thứ 1, 2, 4, 5, 7. Tổng số bông hoa cắt được là \(2 + 4 + 5 + 3 + 6 = 20\) bông hoa.
  • Ví dụ 2: Vì không thể cắt hoa ở 2 khóm hoa liên tiếp nên Minh sẽ cắt hoa ở những khóm hoa thứ 1, 3 và 5. Tổng số bông hoa cắt được là \(10 + 7 + 4 = 21\) bông hoa.

Test 2

Input
5 2
10 4 7 3 4
Output
21

Scoring

  • 40% số test: \(K = 3\)
  • 40% số test: \(N \le 10^3, K \le 10^3\)
  • 20% số test: \(N \le 10^5, K \le 10^5\)
Dễ

Chặt nhị phân 11

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

root

Một xưởng có \(n\) máy có thể được sử dụng để làm sản phẩm. Mục tiêu của bạn là tạo ra tổng cộng \(t\) sản phẩm.

Đối với mỗi máy, bạn biết số giây cần thiết để tạo ra một sản phẩm duy nhất. Các máy có thể hoạt động đồng thời, và bạn có thể tự do quyết định lịch trình của chúng.

Thời gian cần thiết ngắn nhất để tạo ra \(t\) sản phẩm là bao nhiêu?

Input

  • Dòng đầu vào đầu tiên có hai số nguyên \(n\) và \(t\) (\(1 \le n \le 2 \times 10^5\), \(1 \le t \le 10^9\)): số lượng máy và sản phẩm.

  • Dòng tiếp theo có \(n\) số nguyên \(k_1,k_2,\ldots,k_n\) (\(1 \le k_i \le 10^9\)): thời gian cần thiết để tạo ra một sản phẩm bằng mỗi máy.

Output

  • In một số nguyên: thời gian tối thiểu cần thiết để tạo ra \(t\) sản phẩm.

Example

Test 1

Input
3 7
3 2 5
Output
8

Scoring

\begin itemize

  • Có 15% số điểm ứng với \(k_i=1\).
  • Có 15% số điểm ứng với \(t=1\).
  • 70% số điểm còn lại không có ràng buộc gì thêm.
    \end itemize
Xem thêm