Предположим, у меня есть входные данные, которые содержат целые числа, разделенные пробелом, которые уникальны, то есть один не встречается дважды. В таком случае, будет ли использование следующего кода
setA = set(input().split())
быстрее, чем использование приведенного ниже? Если это так (я действительно испытал это таким образом), почему?
listA = list(input().split())
Пожалуйста, не сосредотачивайтесь на том факте, что при чтении ввода не происходит преобразования в int .
В проблеме, над которой я работаю, использование list () дает время ожидания, однако с помощью set () я могу запустить его так, чтобы оно во временных ограничениях. Интересно, почему это так?
edit: Если это может быть связано, то соответствующий код,
arr = input().split()
for ele in arr:
if ele in setA:
happiness += 1
elif ele in setB:
happiness += -1
else:
pass
Где arr
- это разделенная пробелами строка целых чисел, без единственности на этот раз.