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

Tàu cao tốc Metro

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

root

Có \(n\) điểm tập trung dân cư đông đúc. Các điểm này được đánh số từ \(1\) đến \(n\) \((1 \leq n \leq 10^4)\). Mạng lưới giao thông công cộng là \(m\) đường xe lửa cao tốc một ray, mỗi đường nối một cặp điểm dân cư và chạy hai chiều \((0 \leq m \leq 10^5)\), và mọi cặp điểm đều có thể đi đến được với nhau. Để tránh sự va chạm giữa các con tàu cao tốc khi chúng có thể đi ngược chiều trên cùng một đường, chính quyền thành phố quyết định sửa lại các con đường đó thành một chiều. Tuy nhiên, sau khi thay đổi thì lại có một vấn đề bất cập sảy ra, đó là: tồn tại các cặp điểm tập trung dân cư không thể đi đến được nhau.

Chính vì vậy, chính quyền lại thêm một quyết định nữa, đó là sẽ xây dựng thêm một số ít nhất các tuyến đường mới để đảm bảo từ một điểm bất kỳ có thể đi tới điểm bất kỳ khác bằng tàu cao tốc.
Ví dụ, với \(n = 5\) và hiện có 4 đường: \(1 - 2\), \(2 - 3\), \(1 - 4\) và \(4 - 5\). Để đảm bảo yêu cầu đã nêu, người ta cần xây dựng ít nhất \(2\) đường mới, chẳng hạn \(5 - 3\) và \(3 - 1\).

Yêu cầu: Cho \(n\), \(m\) và các cặp \((a, b)\) mô tả mạng giao thông sau khi đã sửa thành đường \(1\) chiều. Mỗi cặp \((a, b)\) xác định tồn tại đường tàu \(a - b\). Hãy xác định số lượng tối thiểu các đường cần xây dựng thêm.

Input

Vào từ file văn bản MONORAIL.INP:

  • Dòng đầu tiên chứa 2 số nguyên n và m,
  • Mỗi dòng trong m dòng tiếp theo chứa 2 số nguyên a và b.

Output

Đưa ra file văn bản MONORAIL.OUT một số nguyên -- số đường mới.

Example

Test 1

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

Trứng vào thùng

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

staffagent

Có \(N\) quả trứng chạy trên băng chuyền theo thứ tự, quả thứ \(i\) có thể tích \(a_i\). Ở cuối băng chuyền có \(M\) thùng đặt liên tiếp, mỗi thùng có sức chứa \(K\) như nhau. Các quả trứng lần lượt được cho vào thùng đầu tiên cho đến khi quả kế tiếp không còn vừa (tổng thể tích sẽ vượt \(K\)), khi đó chuyển sang thùng tiếp theo và cứ thế tiếp tục.

Hãy tìm \(K\) nhỏ nhất (số nguyên không âm) sao cho \(M\) thùng chứa hết tất cả trứng.

Input

  • Dòng đầu gồm hai số nguyên \(N, M\).
  • Dòng thứ hai gồm \(N\) số nguyên \(a_1, \dots, a_N\).

Output

  • In ra giá trị \(K\) nhỏ nhất.

Constraints

  • \(1 \le N \le 10^6\)
  • \(1 \le M \le 10^9\)
  • \(0 \le a_i \le 10^6\)

Sample Input

6 3
3 7 2 5 4 6

Sample Output

10

Explanation

Với \(K = 10\): thùng 1 chứa \(3+7\), thùng 2 chứa \(2+5\), thùng 3 chứa \(4+6\). Với \(K = 9\) thì phải dùng ít nhất \(4\) thùng.

Dễ

Thám hiểm

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

root

Nhà khoa học Alex đang thực hiện một cuộc thám hiểm để nghiên cứu các mẫu vật tại \(n\) địa điểm khác nhau. Anh ấy bắt đầu chuyến đi từ địa điểm \(1\). Giữa một số địa điểm có các con đường bộ hai chiều, và Alex biết thời gian cần thiết để đi qua mỗi con đường.

Ngoài ra, giữa mỗi cặp địa điểm còn có một tuyến đường hàng không, nhưng do một sự cố kỹ thuật gần đây, thời gian di chuyển giữa hai địa điểm \(u\) và \(v\) bằng đường hàng không được tính bằng \((u - v)^2\).

Vì Alex không thích bay cho lắm, anh ta chỉ có thể sử dụng tối đa \(k\) chuyến bay trong suốt hành trình của mình. Mục tiêu của Alex là tìm thời gian di chuyển tối thiểu từ địa điểm \(1\) đến mỗi địa điểm khác.

Yêu cầu: Hãy giúp Alex tính toán thời gian di chuyển tối thiểu từ địa điểm \(1\) đến mỗi địa điểm trong số \(n\) địa điểm.

Input

  • Dòng đầu tiên của input chứa ba số nguyên \(n, m, k\) (\(2 \le n \le 10^5, 1 \le m \le 10^5, 0 \le k \le 20\)) lần lượt là số địa điểm, số con đường bộ và số chuyến bay tối đa mà Alex có thể sử dụng.
  • \(m\) dòng tiếp theo mô tả các con đường bộ. Mỗi dòng chứa ba số nguyên \(u, v, w\) (\(1 \le u, v \le n, u \ne v, 1 \le w \le 10^9\)) --- hai địa điểm được kết nối và thời gian di chuyển qua con đường đó. Lưu ý rằng một số cặp địa điểm có thể được kết nối bởi nhiều hơn một con đường.

Output

  • In ra \(n\) số nguyên, số thứ \(i\) là thời gian di chuyển tối thiểu đến địa điểm \(i\).

Example

Test 1

Input
3 1 2
1 3 1
Output
0 1 1 

Test 2

Input
4 3 1
1 2 3
2 4 5
3 4 7
Output
0 1 4 6 

Scoring

  • Subtask \(1\) (25% số điểm) : \(k = 0\).
  • Subtask \(2\) (25% số điểm) : \(n, m \leq 50\).
  • Subtask \(3\) (25% số điểm) : Đồ thị có dạng đường thẳng.
  • Subtask \(4\) (25% số điểm) : Không có ràng buộc gì thêm.
Dễ

Hình chữ nhật

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

root

Cho một bảng số nguyên kích thước \(N \times M\) gồm các phần tử \(A_{i,j}\).
Bạn cần xử lý \(Q\) truy vấn thuộc một trong hai loại sau:

  • Loại 1: 1 x1 y1 x2 y2 v.
    Tăng giá trị của mọi ô \((x,y)\) với \(x_1 \le x \le x_2\) và \(y_1 \le y \le y_2\) lên \(v\).
  • Loại 2: 2 x1 y1 x2 y2 .
    Hỏi tổng các giá trị của các ô \((x,y)\) với \(x_1 \le x \le x_2\) và \(y_1 \le y \le y_2\).

Chỉ số hàng và cột được đánh số từ \(1\).

\InputFile

  • Dòng đầu chứa ba số nguyên \(N, M, Q\) \((1 \le N,M \le 1000,\; 1 \le Q \le 100000)\).
  • \(N\) dòng tiếp theo, mỗi dòng chứa \(M\) số nguyên mô tả bảng \(A\).
  • \(Q\) dòng tiếp theo mô tả các truy vấn theo định dạng như trên.

\OutputFile
Với mỗi truy vấn loại \(2\), in ra một dòng là tổng cần tìm.

Ràng buộc:
\begin itemize

  • \(|a[i]| \le 1000\).
  • Trong tất cả các truy vấn \(|v| \le 1000\).
    \end itemize

Example

Test 1

Input
3 4 4
1 2 3 4
5 6 7 8
9 10 11 12
2 1 1 3 4
1 2 2 3 4 5
2 2 1 3 3
2 1 3 2 4
Output
78
68
32
Xem thêm