Острова

Для известной игры "Heroes of Might and Magic III" генератор случайных карт создает острова, на которых изначально будут расположены герои. Но при случайной генерации карты острова получаются различными по величине. Назовем коэффициентом несправедливости отношение площади наибольшего острова к площади наименьшего. Необходимо подсчитать этот коэффициент. Карта представляет собой прямоугольник NxM, в каждой клетке которого записан 0 (вода) или 1 (земля). Островом считается множество клеток, содержащих 1, таких, что от любой до любой из них можно пройти по клеткам этого множества, переходя только через их стороны.

Входные данные

В первой строке входного файла содержатся числа N и M (размеры карты, 1≤N, M≤1000). В следующих M строках записано по N чисел (разделенных пробелами), каждое из которых либо 0, либо 1.

Выходные данные

В выходной файл вывести коэффициент несправедливости с 5 знаками после запятой. Если на карте нет ни одного острова, вывести 0.

Пример входного и выходного файлов
INPUT.TXT OUTPUT.TXT
7 6
1 1 0 0 0 0 0
0 1 0 1 0 0 0
1 1 0 1 1 0 0
1 0 0 0 1 0 0
0 0 0 1 1 1 0
1 1 1 0 0 1 0
  
2.33333
 

Инопланетный камень

Межпланетная экспедиция доставила на землю ровно один образец грунта с Марса. Однако случайно получилось, что в геологическом музее он упал в груду самых что ни на есть земных камней. Найти его не представлялось бы возможным, если бы не одна его особенность: он постоянно меняет свой вес. К сожалению, у ученых не оказалось под рукой весов с делениями, а были лишь чашечные весы, которые показывали, какой из двух камней тяжелее. Но это не смутило наших светил науки, и они стали взвешивать какие-то пары камней, которые попадались им под руку. Для удобства все камни пронумеровали числами от 1 до N. Напишите программу, которая по результатам этих взвешиваний отметает все камни, про которые уже с уверенностью можно сказать, что они имеют земное происхождение, и выдает список оставшихся камней.

Входные данные:

Во входном файле записаны два числа N - общее количество камней и M - количество взвешиваний (1≤N≤100, 1≤M≤20000). Затем идет M строк, в каждой из которых записано два числа - номера камней, которые взвешивались, причем первым записан камень, оказавшийся тяжелее второго.

Выходные данные:

В выходной файл вывести в возрастающем порядке номера камней, которые могут быть образцами грунта с Марса.

Пример входного и выходного файлов
INPUT.TXT OUTPUT.TXT
5 4
1 2
2 3
3 1
4 1
  
1 2 3
 

Дорожки для студентов

В студ. городке N (2≤N≤4) общежитий. Надо построить дорожки так, чтобы от любого общежития можно было пройти до любого другого, и при этом суммарная длина дорожек была минимальна. Ограничение: дорожки можно строить лишь параллельно осям координат.

Входные данные:

Во входном файле записано сначала число N, а затем N пар целых чисел из диапазона Integer - координаты общежитий (на плоскости).

Выходные данные:

В выходной файл вывести одно число - минимально возможную суммарную длину дорог.

Пример входного и выходного файлов
INPUT.TXT OUTPUT.TXT
3
1 1
3 2
2 5
  
6