Phát hiện điểm nghẽn

Xem dưới dạng PDF

Gửi bài giải


Điểm: 15
Giới hạn thời gian: 1.5s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Trong kiểm thử phần mềm tự động, Bình nhận được một đồ thị luồng điều hướng gồm \(N\) đỉnh và \(M\) cạnh có hướng.

Hãy phát hiện xem luồng điều hướng này có chứa chu trình có hướng (phụ thuộc vòng) nào hay không. Nếu có chu trình, in ra \(CYCLE\). Nếu không có chu trình (đồ thị là một DAG), in ra \(DAG\).

Định dạng đầu vào

  • Dòng đầu chứa hai số nguyên \(N\) và \(M\) (\(1 \le N \le 10^5\), \(0 \le M \le 2 \cdot 10^5\)).
  • \(M\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(u, v\) (\(1 \le u, v \le N\)) mô tả cung liên kết từ \(u\) sang \(v\).

Định dạng đầu ra

  • Một dòng chứa duy nhất \(CYCLE\) hoặc \(DAG\).

Ràng buộc

Subtask Tỉ lệ điểm Ràng buộc
1 40% \(N \le 1000\), \(M \le 2000\)
2 60% Không có ràng buộc gì thêm

Ví dụ

Input:

3 3
1 2
2 3
3 1

Output:

CYCLE

Nhận xét

Không có ý kiến tại thời điểm này.