reader = (tuple(map(str, line.split())) for line in stdin)
чем она отличается отreader = (tuple(line.split()) for line in stdin)
""" Maxheap variant of heapify. """Смотрим heapify:
""" Transform list into a heap, in-place, in O(len(heap)) time. """
участник число
A 7
B 13
C 42
D 49
итого 7⊕13⊕42⊕49=17
ABC A⊕B A&&!B||C
--------------------
000 0 1 пофиг
001 0 1 пофиг
010 1 0 жопа q(1-p)(1-r)
011 1 1 ок
100 1 1 ок
101 1 1 ок
110 0 0 пофиг
111 0 1 пофиг
Может здесь вообще без нейронок можно обойтись?
Подписи представлены в виде последовательности отрезков
from csv import reader
d = dict(reader(open('Первый.csv')))
for id, src in (reader(open('Второй.csv'))):
if id in d:
print(id, d[id], src)
def multi(x, y):
return int(x) * int(y)
def karatsuba(x, y):
x = str(x)
y = str(y)
n = max(len(x), len(y))
if n == 1:
return multi(x, y)
half_n = n // 2
x_l = x[:-half_n]
x_r = x[-half_n:]
y_l = y[:-half_n]
y_r = y[-half_n:]
if x_l == '':
x_l = 0
if x_r == '':
x_r = 0
if y_l == '':
y_l = 0
if y_r == '':
y_r = 0
sum_x = (int(x_l) + int(x_r))
sum_y = (int(y_l) + int(y_r))
Res1 = karatsuba(x_l, y_l)
Res2 = karatsuba(x_r, y_r)
Res3 = karatsuba(sum_x, sum_y)
return ((pow(100, half_n) * Res1) + (pow(10, half_n) * (Res3 - Res1 - Res2)) + Res2)
function getRandomSet(lo, hi, n) { // я привык к тому, что min и max - функции )))
var res = new Set();
while (res.size < n) res.add(Math.floor(Math.random() * (hi - lo + 1)) + lo);
return res;
}
console.log(getRandomSet(0, 9, 5));