27.07 Прочие прототипы
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
Даны числа ,
и
, которые являются количествами чисел с соответствующими остатками при делении на
, указанными в названии. Нужно найти количество подмножеств, сумма элементов которых делится на
.
from math import comb f = open(’2.txt’) ans = 0 k = [int(f.readline()) for _ in range(3)] s2 = [0, 0, 0] for i in range(3): for j in range(i, k[2] + 1, 3): s2[i] += comb(k[2], j) s1 = [0, 0, 0] for i in range(3): for j in range(i, k[1] + 1, 3): s1[i] += comb(k[1], j) ans = s1[0] * s2[0] + s1[1] * s2[1] + s1[2] * s2[2] ans = ans * 2 ** k[0] print(ans)
Ошибка.
Попробуйте повторить позже
Дано число , зачем
чисел. Нужно найти количество подмножеств, сумма элементов которых не делится на
.
from math import comb f = open(’3.txt’) n = int(f.readline()) ans = 0 k = [0, 0, 0] for i in range(n): x = int(f.readline()) k[x % 3] += 1 s2 = [0, 0, 0] for i in range(3): for j in range(i, k[2] + 1, 3): s2[i] += comb(k[2], j) s1 = [0, 0, 0] for i in range(3): for j in range(i, k[1] + 1, 3): s1[i] += comb(k[1], j) ans = s1[0] * s2[0] + s1[1] * s2[1] + s1[2] * s2[2] ans = ans * 2 ** k[0] mn = 0 # количество всех множеств for i in range(n + 1): # с 0, так как существует пустое множество mn += comb(n, i) print(mn - ans)
Ошибка.
Попробуйте повторить позже
Дано число , зачем
чисел. Нужно найти количество подмножеств, сумма элементов которых делится на
.
from math import comb f = open(’0.txt’) n = int(f.readline()) ans = 0 k = [0, 0] for i in range(n): x = int(f.readline()) k[x % 2] += 1 s1 = 0 for j in range(0, k[1] + 1, 2): s1 += comb(k[1], j) ans = s1 ans = ans * 2 ** k[0] print(ans)
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27B.txt’) n = int(f.readline()) k = 15 ans = [0]*k for i in range(n): x = int(f.readline()) ans_new = ans[:] #Аналог ans.copy() #Подсчет ответа для уже существующих подмножеств for j in range(k): ans_new[(j+x) % k] += ans[j] #Составление нового множества из одного числа x ans_new[x % k] += 1 #Сохранение нового количества множеств ans = ans_new[:] print(ans[0])
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) k = 20 ans = [0]*k for i in range(n): x = int(f.readline()) ans_new = ans[:] #Аналог ans.copy() #Подсчет ответа для уже существующих подмножеств for j in range(k): ans_new[(j+x) % k] += ans[j] #Составление нового множества из одного числа x ans_new[x % k] += 1 #Сохранение нового количества множеств ans = ans_new[:]
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) k = 100 ans = [0]*k for i in range(n): x = int(f.readline()) ans_new = ans[:] #Аналог ans.copy() #Подсчет ответа для уже существующих подмножеств for j in range(k): ans_new[(j+x) % k] += ans[j] #Составление нового множества из одного числа x ans_new[x % k] += 1 #Сохранение нового количества множеств ans = ans_new[:] print(ans[0])
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) k = 256 ans = [0]*k for i in range(n): x = int(f.readline()) ans_new = ans[:] #Аналог ans.copy() #Подсчет ответа для уже существующих подмножеств for j in range(k): ans_new[(j+x) % k] += ans[j] #Составление нового множества из одного числа x ans_new[x % k] += 1 #Сохранение нового количества множеств ans = ans_new[:] print(ans[0])
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) k = 1024 ans = [0]*k for i in range(n): x = int(f.readline()) ans_new = ans[:] #Аналог ans.copy() #Подсчет ответа для уже существующих подмножеств for j in range(k): ans_new[(j+x) % k] += ans[j] #Составление нового множества из одного числа x ans_new[x % k] += 1 #Сохранение нового количества множеств ans = ans_new[:] print(ans[0])
Ошибка.
Попробуйте повторить позже
На вход подается натуральное число затем
натуральных чисел в порядке неубывания. Определите, есть ли
среди чисел число
. В качестве ответа укажите
, если искомое число присуствует и
в ином
случае.
def bin_search(a, x): n = len(a) left = -1 right = n while right - left > 1: middle = (left + right) // 2 if a[middle] >= x: right = middle else: left = middle if right != n and a[right] == x: return True else: return False f = open(’test.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] print(bin_search(a, 2555))
Ошибка.
Попробуйте повторить позже
На вход подается натуральное число затем
натуральных чисел в порядке неубывания. Определите, на каком месте
впервые встречается число
. В качестве ответа укажите индекс данного числа в массиве, индексация начинается с
.
def bin_search(a, x): n = len(a) left = -1 right = n while right - left > 1: middle = (left + right) // 2 if a[middle] >= x: right = middle else: left = middle if right != n and a[right] == x: return right else: return -1 f = open(’test.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] print(bin_search(a, 10))
Ошибка.
Попробуйте повторить позже
На вход подается натуральное число затем
натуральных чисел в порядке неубывания. Определите, на каком месте
в последний раз встречается число
. В качестве ответа укажите индекс данного числа в массиве, индексация начинается
с
.
def bin_search(a, x): n = len(a) left = -1 right = n while right - left > 1: middle = (left + right) // 2 if x == a[middle]: left = middle elif a[middle] >= x: right = middle else: left = middle if left != n and a[left] == x: return left else: return -1 f = open(’test.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] print(bin_search(a, 82))
Ошибка.
Попробуйте повторить позже
Найдите решение следующего уравнения с точностью до :
В качестве ответа укажите положительный корень уравнения с точностью до , дробную часть укажите через
точку (т.е. так:
).
def fun(x): return x**2 def bin_search(c): eps = 0.001 left = 0 right = 10**15 while abs(right - left) > eps: middle = (left + right) / 2 if fun(middle) - c < 0: left = middle else: right = middle return right print(bin_search(99999**2))
Ошибка.
Попробуйте повторить позже
Найдите максимальное значение функции с точностью до при следующих условиях
В качестве ответа укажите найденное число, округлив до большего.
def fun(x): return 6*x**2-240*x+3600 def bin_search(): eps = 0.001 left = 0 right = 30 while abs(right - left) > eps: middle = (left + right) / 2 if fun(middle) < 0: left = middle else: right = middle return int(fun(right) + 1) print(bin_search())
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] k = 10 ans = 0 for i in range(1, 2**n): t = i s = 0 for j in range(n): if t % 2 == 1: s += a[j] t //= 2 if s % k == 0: ans += 1 print(ans)
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] k = 30 ans = 0 for i in range(1, 2**n): t = i s = 0 for j in range(n): if t % 2 == 1: s += a[j] t //= 2 if s % k == 0: ans += 1 print(ans)
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] k = 100 ans = 0 for i in range(1, 2**n): t = i s = 0 for j in range(n): if t % 2 == 1: s += a[j] t //= 2 if s % k == 0: ans += 1 print(ans)
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] k = 128 ans = 0 for i in range(1, 2**n): t = i s = 0 for j in range(n): if t % 2 == 1: s += a[j] t //= 2 if s % k == 0: ans += 1 print(ans)
Ошибка.
Попробуйте повторить позже
На вход программы поступает последовательность из натуральных чисел, все числа в последовательности различны.
Рассматриваются всевозможные непустые подмножества, состоящие из элементов последовательности. Необходимо найти
количество подмножеств, в которых сумма элементов кратна
.
Пример входных данных:
Первая строка входного файла содержит число – общее количество чисел в наборе. Каждая из следующих
строк содержит натуральное число, не превышающее
.
f = open(’27A.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] k = 1000 ans = 0 for i in range(1, 2**n): t = i s = 0 for j in range(n): if t % 2 == 1: s += a[j] t //= 2 if s % k == 0: ans += 1 print(ans)
Ошибка.
Попробуйте повторить позже
На вход подается натуральное число затем
натуральных чисел в порядке неубывания. Определите, есть ли
среди чисел число
. В качестве ответа укажите
, если искомое число присуствует и
в ином
случае.
def binary_search_recursive(arr, elem, start=0, end=None): if end is None: end = len(arr) - 1 if start > end: return False mid = (start + end) // 2 if elem == arr[mid]: return mid if elem < arr[mid]: return binary_search_recursive(arr, elem, start, mid-1) return binary_search_recursive(arr, elem, mid+1, end) f = open(’test.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] print(binary_search_recursive(a, 8305))
Ошибка.
Попробуйте повторить позже
На вход подается натуральное число затем
натуральных чисел в порядке неубывания. Определите, на каком месте
впервые встречается число
. В качестве ответа укажите индекс данного числа в массиве, индексация начинается с
.
def binary_search_recursive(arr, elem, start=0, end=None): if end is None: end = len(arr) - 1 if start > end: return False mid = (start + end) // 2 if elem <= arr[mid]: return binary_search_recursive(arr, elem, start, mid-1) if elem == arr[mid + 1]: return mid + 1 return binary_search_recursive(arr, elem, mid+1, end) f = open(’test.txt’) n = int(f.readline()) a = [int(f.readline()) for i in range(n)] print(binary_search_recursive(a, 34))