Триплет — это массив из трех целых чисел. Вам дан двумерный целочисленный массив триплетов, где триплеты[i] знак равно [ai, bi, ci] описывает i-й триплет. Вам также дается целочисленный массив target = [x, y, z] который описывает триплет, который вы хотите получить.

Чтобы получить цель, вы можете применить следующую операцию к триплетам любое количество раз (возможно, ноль):

Выберите два индекса (с индексом 0) i и j (i != j) и обновите триплеты[j] стать [max(ai, aj), max(bi, bj), max(ci, cj)].
Например, если тройня[i] знак равно [2, 5, 3] и тройняшки[j] знак равно [1, 7, 5]тройняшки[j] будет обновлен до [max(2, 1), max(5, 7), max(3, 5)] знак равно [2, 7, 5].
Возвратите true, если возможно получить целевой триплет [x, y, z] как элемент триплетов или false в противном случае.

class Solution:
    def mergeTriplets(self, triplets: List[List[int]], target: List[int]) -> bool:
        good = set()

        for t in triplets:
            if t[0] > target[0] or t[1] > target[1] or t[2] > target[2]:
                continue
            for i, v in enumerate(t):
                if v == target[i]:
                    good.add(i)


        return len(good) == 3


Войти в полноэкранный режим

Выйти из полноэкранного режима