Статья Автор: Макаров Даниил

А

# Задание 1 вариант 1
n = int(input())
a = []
# Вводим матрицу
for i in range(n):
 a.append(list(map(int, input().split())))
# Меняем диагонали
for i in range(n):
 a[i][i], a[n-i-1][i] = a[n-i-1][i], a[i][i]
for i in range(n):
 print(*a[i])
# Задание 1 вариант 2
n = int(input())
m = int(input())
a = []
# Вводим матрицу
for i in range(n):
 a.append(list(map(int, input().split())))
# Ищем два максимума
mx0 = mx1 = -10 ** 10
j0 = j1 = i0 = i1 = 0
for i in range(n):
 for j in range(m):
 if a[i][j] > mx0:
 mx1, i1, j1 = mx0, i0, j0
 mx0, i0, j0 = a[i][j], i, j
 elif a[i][j] > mx1:
 mx1, i1, j1 = a[i][j], i, j
# Меняем местами элементы
a[i0][j0], a[i1][j1] = a[i1][j1], a[i0][j0]
for i in range(n):
 print(*a[i])
# Задание 2 вариант 1
# Программа должна использовать рекурсию, т.к. циклы запрещены
def rec(s, n):
 if n < 1:
 print(s)
 return
 rec(s + '0', n - 1)
 rec(s + '1', n - 1)
 rec(s + '2', n - 1)
n = int(input())
rec('', n)
# Задание 2 вариант 2
# Программа должна использовать рекурсию, т.к. циклы запрещены
def rec(s, n):
 if n < 1:
 print(s)
 return
 if s == '' or s[-1] != 'K':
 rec(s + 'K', n - 1)
 if s == '' or s[-1] != 'L':
 rec(s + 'L', n - 1)
 if s == '' or s[-1] != 'M':
 

rec(s + 'M', n - 1)
 if s == '' or s[-1] != 'N':
 rec(s + 'N', n - 1)
n = int(input())
rec('', n)
# Задание 3 вариант 1
# Программа должна водить данные из файла. Если в файлe есть данные на
кириллице,
# нужно использовать encoding
file = open('name.txt', encoding = 'utf-8')
s = file.read()
file.close()
counter = [0] * 1200
alf = 'ячсмитьбюэждлорпавыфйцукенгшщзхъё'
# используем список счетчиков. создаем список повторов каждой буквы в
нижнем регистре
for i in range(len(s)):
 if s[i-1].lower() == 'т' and s[i].lower() in alf:
 counter[ord(s[i].lower())] += 1
m = max(counter)
for i in range(1200):
 if counter[i] == m:
 print(chr(i))
 break
# Задание 3 вариант 2
# Программа должна вводить данные из файла. Если в файлe есть данные
на кириллице,
# нужно использовать encoding
file = open('name.txt', encoding = 'utf-8')
s = file.read()
# можно использовать словарь
d = dict()
alf_ = '1234567890)(/*-+,.;:!?%$#@&^/{}[]№' #не буквы
for c in s:
 for symbol in alf_:
 c = c.replace(symbol, ' ') # все, кроме букв, меняем на пробел
 while ' ' in c:
 c = c.replace(' ', ' ') # убираем двойные пробелы
s = s.lower().split() # разбиваем на списoк слов
for word in s:
 # можно исп-ть функцию get для работы со словарем
 d[word] = d.get(word, 0) + 1
 # но можно не исп-ть get. другой вариант решения:
 # if word in d:
 # d[word] += 1
 # else:
 # d[word] = 1
# идем по отсортированному словарю по парам ключ-значение и выводим
for key, value in sorted(d.items()):
 if value == 2:
 print(key)
# или идем идем по отсортированному словарю по ключам и выводим
for key in sorted(d.keys()):

 if d[key] == 2:
 print(key)
# Задание 4 вариант 1
# Программа должна использовать алгоритм бин.поиска, иначе не зайдет
по времени
def bin_search(arr, x, n):
 r = n
 l = -1
 while r - l > 1:
 m = (r + l) // 2
 if arr[m] >= x:
 r = m
 else:
 l = m
 return r
n = int(input())
a = list(map(int, input().split()))
x = int(input())
a.sort()
if x < a[0]:
 print(a[0])
elif x > a[-1]:
 print(a[-1])
else:
 ans = bin_search(a, x, n)
 if a[ans] - x < x - a[ans-1]:
 print(a[ans])
 else:
 print(a[ans-1])
# Задание 4 вариант 2
# Программа должна использовать алгоритм бин.поиска, иначе не зайдет
по времени
def bin_search(arr, x, n):
 r = n
 l = -1
 while r - l > 1:
 m = (r + l) // 2
 if arr[m] >= x:
 r = m
 else:
 l = m
 return r
n, k = map(int, input().split())
arr1 = list(map(int, input().split()))
arr2 = list(map(int, input().split()))
for number in arr2:
 if number < arr1[0] or number > arr1[-1]:
 print('NO')
 else:
 if bin_search(a, x, n):
 print('YES')
 else:
 print('NO')
# Задание 5 вариант 1
 

# Программа должна использовать сортировку по условию
s = input()
dig = s.split()
dig.sort(key = lambda x: x.count('0'))
print(*dig)
# Задание 5 вариант 2
# Программа должна использовать сортировку по условию
n = int(input())
list_student = []
for i in range(n):
 s = input().split()
 list_student.append([s[0], float(s[2].replace(',', '.'))])
list_student.sort(key = lambda x: -x[1])
for i in range(n):
 print(list_student[i][0])
Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать