1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | let compare x range = (if (fst range)+1 < x then 1 else 0), (if (snd range)+1 < x then 1 else 0) let insert range xs = let rec impl range xs ret = if xs = [] then (range::ret) else let head = List.hd xs in let tail = List.tl xs in match compare (fst range) head, compare (snd range) head with | (0, 0), (0, 0) -> range::xs | (0, 0), (1, 1) -> impl range tail ret | (1, 1), (1, 1) -> impl range tail (head::ret) | (0, 0), (1, 0) -> impl ((fst range), (snd head)) tail ret | (1, 0), (1, 1) -> impl ((fst head), (snd range)) tail ret | _ -> xs in impl range xs [] let main = let ret = [] in let num = Scanf.scanf "%d\n" (fun n -> n) in let input () = Scanf.scanf "%d %d\n" (fun h t -> (h, t)) in List.iter (fun r -> Printf.printf "%d %d\n" (fst r) (snd r)) ( List.sort Pervasives.compare ( let rec loop n ret = if n = 0 then ret else loop (n-1) (insert (input ()) ret) in loop (num-1) (input () :: ret))) |
CmxldCBjb21wYXJlIHggcmFuZ2UgPQoJKGlmIChmc3QgcmFuZ2UpKzEgPCB4IHRoZW4gMSBlbHNlIDApLCAoaWYgKHNuZCByYW5nZSkrMSA8IHggdGhlbiAxIGVsc2UgMCkKCmxldCBpbnNlcnQgcmFuZ2UgeHMgPQoJbGV0IHJlYyBpbXBsIHJhbmdlIHhzIHJldCA9CgkJaWYgeHMgPSBbXSB0aGVuIChyYW5nZTo6cmV0KSBlbHNlCgkJCWxldCBoZWFkID0gTGlzdC5oZCB4cyBpbgoJCQlsZXQgdGFpbCA9IExpc3QudGwgeHMgaW4KCQkJCW1hdGNoIGNvbXBhcmUgKGZzdCByYW5nZSkgaGVhZCwgY29tcGFyZSAoc25kIHJhbmdlKSBoZWFkIHdpdGgKCQkJCQl8ICgwLCAwKSwgKDAsIDApIC0+IHJhbmdlOjp4cwoJCQkJCXwgKDAsIDApLCAoMSwgMSkgLT4gaW1wbCByYW5nZSB0YWlsIHJldAoJCQkJCXwgKDEsIDEpLCAoMSwgMSkgLT4gaW1wbCByYW5nZSB0YWlsIChoZWFkOjpyZXQpCgkJCQkJfCAoMCwgMCksICgxLCAwKSAtPiBpbXBsICgoZnN0IHJhbmdlKSwgKHNuZCBoZWFkKSkgdGFpbCByZXQKCQkJCQl8ICgxLCAwKSwgKDEsIDEpIC0+IGltcGwgKChmc3QgaGVhZCksIChzbmQgcmFuZ2UpKSB0YWlsIHJldAoJCQkJCXwgXwkJCQkgLT4geHMKCWluIGltcGwgcmFuZ2UgeHMgW10KCmxldCBtYWluID0KCWxldCByZXQgPSBbXSBpbgoJbGV0IG51bSA9IFNjYW5mLnNjYW5mICIlZFxuIiAoZnVuIG4gLT4gbikgaW4KCWxldCBpbnB1dCAoKSA9IFNjYW5mLnNjYW5mICIlZCAlZFxuIiAoZnVuIGggdCAtPiAoaCwgdCkpIGluCglMaXN0Lml0ZXIgKGZ1biByIC0+IFByaW50Zi5wcmludGYgIiVkICVkXG4iIChmc3QgcikgKHNuZCByKSkgKAoJCUxpc3Quc29ydCBQZXJ2YXNpdmVzLmNvbXBhcmUgKAoJCQlsZXQgcmVjIGxvb3AgbiByZXQgPQoJCQkJaWYgbiA9IDAgdGhlbiByZXQgZWxzZSBsb29wIChuLTEpIChpbnNlcnQgKGlucHV0ICgpKSByZXQpCgkJCWluIGxvb3AgKG51bS0xKSAoaW5wdXQgKCkgOjogcmV0KSkp
-
upload with new input
-
result: Success time: 0s memory: 2780 kB returned value: 2
2 0 9 20 29
Fatal error: exception End_of_file
-
result: Success time: 0s memory: 2780 kB returned value: 0
2 0 10 5 19
0 19



