Sửa đường

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1900 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Hệ thống giao thông của thành phố gồm N nút giao thông đánh số \(1, 2, \ldots, N\) với \(N-1\) đường nối trực tiếp hai chiều giữa các nút. Hệ thống này đảm bảo tính liên thông giữa các nút.

Thành phố giao cho Sở Giao thông công chính lập dự án cải tạo hai tuyến đường, mỗi tuyến là một dãy các nút sao cho hai nút liên tiếp có đường nối trực tiếp. Hai tuyến đường cải tạo phải không có giao cắt, nghĩa là không có nút giao thông chung. Kinh phí cấp cho dự án sẽ bằng tích độ dài của hai tuyến (độ dài của mỗi tuyến bằng số đường nối trực tiếp của tuyến đó).

Cho thông tin về hệ thống giao thông. Hãy xác định kinh phí được cấp lớn nhất có thể.

Input

  • Dòng \(1\): Ghi số nguyên dương \(N\) \((2 \leq N \leq 3 \cdot 10^5)\)
  • Dòng \(2 \ldots N+1\): mỗi dòng ghi hai số nguyên \(a, b\) \((1 \leq a, b \leq N)\) chỉ một đường nối trực tiếp giữa hai nút \(a, b\).

Output

  • Ghi một số nguyên duy nhất là kết quả tìm được.

Constraints

  • Subtask 1 (\(50\%\) số điểm): \(n \leq 200\)
  • Subtask 2 (\(50\%\) số điểm): không giới hạn gì thêm

Example

Test 1

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

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.