eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Аэропорты

Аэропорты

Авиакомпания предлагает авиабилеты из n аэропортов, пронумерованных от 1 до n. Время полета tij из аэропорта i в аэропорт j известно для всех пар i и j. Возможно tijtji из-за ветра или географического расположения. При посадке в аэропорту самолет должен быть осмотрен, прежде чем он сможет снова взлететь. Время осмотра составляет pi и зависит только от аэропорта, в котором проводится инспекция.

Имея набор из m предоставляемых рейсов, определите минимальное количество самолетов, которое должна купить авиакомпания. Авиакомпания может добавлять внеплановые рейсы для перемещения самолетов, если это уменьшит общее количество необходимых самолетов.

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

Первая строка содержит числа n и m (1n, m500). Следующая строка содержит n целых чисел p1, ..., pn (0pi106).

Каждая из следующих n строк содержит n целых чисел. j-ое число в строке i + 2 равно tij (0tij106). Гарантируется, что tii = 0 для всех i. Однако может иметь место tijtji при ij.

Каждая из следующих m строк содержит три целых числа si, fi и ti (1si, fin, sifi, 1ti106), указывающих на то что авиакомпания должна обеспечить полет из аэропорта si с точным временем вылета ti, следуя в точности в аэропорт fi.

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

Выведите минимальное количество самолетов, которые должна приобрести авиакомпания, для обеспечения m требуемых рейсов.

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
2 2
1 1
0 1
1 0
1 2 1
2 1 1
Вихідні дані #1
2
Вхідні дані #2
2 2
1 1
0 1
1 0
1 2 1
2 1 3
Вихідні дані #2
1
Вхідні дані #3
5 5
72 54 71 94 23
0 443 912 226 714
18 0 776 347 810
707 60 0 48 923
933 373 881 0 329
39 511 151 364 0
4 2 174
2 1 583
4 3 151
1 4 841
4 3 993
Вихідні дані #3
3
Джерело 2015 ACM North America - Pacific Northwest, Дивизион 1, Задача A