Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

GRAPH - Lại đồ thị

Ngoài lề một tí

Nếu bạn là thí sinh thi VNOI OIO '09, đọc đến đây chắc hẳn bạn đang mừng lắm. Bởi vì mãi mới tìm thấy bài đồ thị “tủ” để kiếm điểm. Chắc chắn bạn sẽ càng mừng hơn nếu như tôi nói với bạn rằng bài mà bạn chuẩn bị đọc ở đây không yêu cầu thuật toán đồ thị nào cả mà chỉ hỏi về phần mà ai cũng biết đó là biểu diễn đồ thị.

Đề bài

Chú ý: đồ thị trong bài này là đồ thị có hướng.

Bạn cần viết chương trình xử lý các yêu cầu sau:

  • NEW n k, với k=0 hoặc k=1 (khởi tạo 1 đồ thị mới với n đỉnh, nếu k = 0 thì là đồ thị rỗng, nếu k = 1 thì là đồ thị đầy đủ, đồ thị đầy đủ này bao gồm n2 cạnh, nghĩa là bao gồm cả các vòng u → u với 1 ≤ u ≤ n).
  • ADD u v (thêm cạnh từ u → v nếu chưa có).
  • DEL u v (xóa cạnh từ u → v nếu có).
  • ANY (xóa một cạnh bất kì trong đồ thị nếu có).
  • EDG u v (kiểm tra xem có cạnh từ u → v hay không).

Bạn hãy lập trình xử lý bài toán sau đây:

  • Nhập vào M yêu cầu, hãy thực hiện lần lượt từng yêu cầu.
  • Đối với những yêu cầu ANY, in ra cạnh bị xóa. Nếu không có cạnh nào thì in ra -1.
  • Đối với những yêu cầu EDG u v, in ra YES/NO tương ứng với có hay không có cạnh từ u → v.

Dữ liệu

  • Gồm nhiều dòng, mỗi dòng ghi một yêu cầu cần xử lý. Dòng cuối cùng ghi "END" báo hiệu kết thúc dữ liệu. Số yêu cầu cần xử lý không quá 106.

Với yêu cầu dạng NEW, ta luôn có 1 ≤ n ≤ 1000. Dữ liệu đảm bảo yêu cầu đầu tiên luôn là yêu cầu dạng NEW và với các yêu cầu ADD, DEL, EDG, 1 ≤ u, v ≤ n.

Kết quả

Tương ứng với mỗi yêu cầu dạng ANY hay EDG là một dòng ghi kết quả.

  • Đối với yêu cầu dạng ANY, ghi ra hai số u, v cho biết bạn muốn xóa cạnh u → v.
  • Đối với yêu cầu dạng EDG, ghi ra "YES" hoặc "NO" tương ứng với việc đồ thị còn cạnh u → v hay không.

Ví dụ

Dữ liệu
NEW 4 0
ADD 1 2
ADD 2 3
ANY
EDG 1 2
END

Với dữ liệu mẫu trên đây, hai kết quả mẫu sau đây đều hợp lệ:
Kết quả
2 3
YES

Kết quả
1 2
NO

Được gửi lên bởi:Jimmy
Ngày:2009-02-07
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ERL GOSU JS-RHINO NODEJS PERL6 PYPY RUST SED VB.NET
Nguồn bài:VNOI Online Informatics Olympiad '09
Day 1

hide comments
2017-08-19 09:48:08
Thứ nhất, cái lệnh ANY bài này mình thấy nhảm nhảm vì mình dùng list lưu lại index của cạnh có trong đồ thị, khi đó chỉ việc remove đại 1 phần tử bất kỳ trong list đi (mình làm remove[0] :)) )
Thứ hai, cho cái số k cũng dư thừa hay sao ấy.
2016-10-07 17:56:47
Hinh nhu co dung random ko
2015-07-28 16:16:30 Sue
rốt cuộc sinh ra cái ANY để làm gì thế...
2015-06-19 05:35:47 cuong
đề rất hay nhưng mà mình vẫn chưa làm được :(
2015-03-25 01:45:09 ♡Angelo♡
sao cứ lỗi hệ thống vậy nhỉ?? cso ai biết hk? chỉ e với...
2013-08-28 15:22:11 Pham Dat
c/c++ thi dùng getchar_unlocked để ct chạy nhanh phần nhập
http://vnoi.info/index.php?option=com_fireboard&Itemid=26&func=view&catid=9&id=56848
2013-08-27 13:06:27 Pham Dat
giải quyết xong NEW rồi dính cái vụ ANY
2013-08-26 14:01:49 Pham Dat
cùng 1 code nộp 3 lần mà dao động đến 9 điểm
2012-12-07 14:04:14 Stupider
cái lệnh ANY dị ghê @@
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.