Форум сайта python.su
0
Мне даны два массива.
x и y. Нужно сравнить их и вывести число, сколько раз встречались одинаковые числа
Пример x = 1054,1492
y = 1492,65536,1492,100.
Число 1492 встречается 2 раза во втором массиве и это число есть в первом, поэтому ответ 2.
Помогите реализовать, ибо моя программа работает слишком медленно
Офлайн
13
Офлайн
0
x = int(1)
q = int(input())
s =
h =
n = int()
z = int()
j = int()
for x in range(q):
s.append(int(input()))
m = list(set(s))
w = int(input())
for x in range(w):
h.append(int(input()))
for x in range(len(m)):
for x in range(w):
if m == h:
j = j + 1
n = n + 1
z = z+1
n = 0
print(j)
Не бейте сильно. Я совсем новичок в этом деле
Офлайн
13
в питоне отступы имееют огоромное значение, оформьте код с помощью тегов и с сохраненнием форматирования.
Офлайн
0
x = int(1)
q = int(input())
s =
h =
n = int()
z = int()
j = int()
for x in range(q):
—-s.append(int(input()))
m = list(set(s))
w = int(input())
for x in range(w):
—- h.append(int(input()))
for x in range(len(m)):
—-for x in range(w):
——–if m == h:
————j = j + 1
——–n = n + 1
—-z = z+1
—-n = 0
print(j)
Офлайн
13
Есть спиециальный тег оформляющий код, пользуйте его.
вот вариант, посомтрите.
def main(): x = [1, 2, 3, 4, 5, 6, 7, 8, 9] y = [2, 2, 2, 3, 6, 9, 8, 8, 8, 9, 10] for item in x: if item in y: print ('Элемент %d встречаеться %d раз' % (item, y.count(item)) )
Офлайн
0
Alex_HHА можете рассказать очень подробно как работает?
Есть спиециальный тег оформляющий код, пользуйте его.вот вариант, посомтрите.
Офлайн
73
x = [1, 2, 3, 4, 5, 6, 7, 8, 9] y = [2, 2, 2, 3, 6, 9, 8, 8, 8, 9, 10] for i in set(x) & set(y): print('число {} встречается {} раз(а)'.format(i,max(x.count(i),y.count(i))))
Офлайн
13
Первый цикл пебирает все элементы спасика х, условие проверяет если элемент из списка х в списке у, если есть то с помощью метода count считаем сколько элементов есть с писке у. Метод count стандартный метод объекта list. Краткая справка по спискам (list)
Офлайн
0
Большое спасибо!
Офлайн