Как проверить, есть ли квадраты определенных чисел в одном списке во втором? - PullRequest
0 голосов
/ 17 марта 2020

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

Я прошел несколько тестов, но когда я на самом деле пытаюсь отправить его, возникают определенные ошибки, и тесты возвращаются False.

import math
def comp(array1, array2):
    **if array1 == []:
        return False
    if array2 == []:
        return False
    for i in range(len(array1)):
        promenljiva = array1[i * i]
        if promenljiva in array2:
            return True
            break

    for j in range(len(array2) - 1):
        promenljiva_1 = math.sqrt(array2[j])
        if promenljiva_1 not in array1:
            return False
        elif promenljiva_1 != array1[0]:
            return False
            break

Это мой код, так что если кто-то может, пожалуйста, помогите мне в этом, я был бы очень рад! :) PS Promenljiva на самом деле просто сербский термин для переменной:)

1 Ответ

0 голосов
/ 17 марта 2020

Это вернет True, если все элементы ** 2 в array1 находятся в массиве 2. В противном случае он вернет False. Однако он все равно вернет True, если в массиве 2 есть дополнительные значения.

def comp(array1, array2):
    results = []
    for i in array1:
        if i*i in array2:
            results.append(True)
        else:
            results.append(False)
    if False in results:   #if any squares are not in array2, return False
        return False
    else:
        return True
...