Рабочие листы
к вашим урокам
Скачать
1 слайд
Решение задач ЕГЭ
на языке Python
(Питон)
2 слайд
Задание 1
По каналу связи передаётся последjвательнoсть пoлoжительных целых чисел, все числа не превышают 1000. Кoличество чисел равно N (N>2), нo мoжет быть oчень великo. Затем передаётся контрoльное значение последовательности – наибoльшее число R, удовлетворяющее следующим услoвиям:
R – сумма двух различных переданных элементов последовательности («различные» означает, что нельзя просто удваивать переданные числа; суммы различных, но равных по величине допускаются);
При делении на 3 число R даёт остаток 1;
Если такого числа R нет, то контрольное значение полагается равным 1.
3 слайд
R_0 = R_1 = R_2_1 = R_2_2 = -1
# Переменные, в которых мы будем хранить числа
N = int(input())
for i in range(N):
num = int(input())
if num % 3 == 0:
R_0 = max(R_0, num)
# Перезаписываем число на большее, если возможно
elif num % 3 == 1:
R_1 = max(R_1, num)
elif num % 3 == 2:
# Можно и else, но так более понятно
if num > R_2_1:
R_2_1, R_2_2 = num, R_2_1
# Нужно хранить 2 наибольших числа, причём R_2_1 >= R_2_2
elif num > R_2_2:
R_2_2 = num
Решение:
4 слайд
R = max(R_0 + R_1, R_2_1 + R_2_2)
# Это - вычисленное контрольное значение
if R < 0:
# Если такого числа нет, R будет отрицательно
# Так как все числа не превышают 1000
R = 1
print("Вычисленное контрольное значение: {}".format(R))
# Осталось проверить пришедшее число
result = int(input())
if R == result:
print("Контроль пройден")
else:
print("Контроль не пройден")
Решение:
5 слайд
Задание 2
На вход программе подаются сведения о номерах школ учащихся, участвовавших в олимпиаде. В первой строке сообщается количество учащихся N, каждая из следующих N строк имеет формат:
<Фамилия> <Инициалы> <номер школы>,
где <Фамилия> – строка, состоящая не более чем из 20 символов,
<Инициалы> – строка, состоящая из 4-х символов (буква, точка, буква, точка),
<номер школы> – не более чем двузначный номер.
<Фамилия> и <Инициалы>, а также <Инициалы> и <номер школы> разделены одним пробелом.
Пример входной строки:
Иванов П.С. 57
6 слайд
n=int(input())
b=[]
for i in range(0,n):
a=input().split()
b.append(int(a[2]))
d=set(b)
d=list(d)
m=1001
s=[]
for i in range(0,len(d)):
if m>b.count(d[i]):
m=b.count(d[i])
s=d[i]
print(m)
print("Школа №", s,"выставила наименьшее количество участников =", m)
Решение:
7 слайд
Задание 3
В командных олимпиадах по программированию для решения предлагается не больше 12 задач. Команда может решать предложенные задачи в любом порядке. Подготовленные решения команда посылает в единую проверяющую систему соревнований. Вам предлагается написать эффективную, в том числе по используемой памяти, программу, которая будет статистически обрабатывать пришедшие запросы на проверку, чтобы определить популярность той или иной задачи. Следует учитывать, что количество запросов в списке может быть очень велико, так как многие соревнования проходят с использованием сети Интернет. Перед текстом программы кратко опишите используемый Вами алгоритм решения задачи. На вход программе в первой строке подаётся количество пришедших запросов N. В каждой из последующих N строк записан номер задачи от 1 до 12.
8 слайд
d = []
n = int(input())
for i in range(0,n):
p = int(input())
d.append(p)
a = set(d) # список преобразуем во множество, избавляемся от повторяющихся данных
k = len(a) # запоминаем количество неповторяющихся данных
a = list (a) # преобразуем множество в список
a.sort()
for i in range(k):
print (a[i],d.count(a[i]))
Решение:
9 слайд
Задание 4
По каналу связи передаются данные в виде последовательности положительных целых чисел. Количество чисел заранее неизвестно, но не менее двух, признаком конца данных считается число 0. После данных передаётся контрольное значение. Оно равно такому максимально возможному произведению двух чисел из переданного набора, которое делится на 7, но не делится на 49. Если такое произведение получить нельзя, контрольное значение считается равным 1.
10 слайд
Пример выходных данных для приведённого выше примера входных данных:
Введено чисел: 4
Контрольное значение: 64
Вычисленное значение: 63
Значения не совпали
11 слайд
Задание 5
Специальная камера, установленная на перекрёстке, фиксирует количество проезжающих автомобилей, и каждую минуту по каналу связи передаёт неотрицательное целое число — количество автомобилей, проехавших перекрёсток за эту минуту. Известно, что за минуту перекрёсток может проехать не более 100 автомобилей. Необходимо найти в заданной серии показаний максимальное количество автомобилей, проехавших перекрёсток в течение пяти подряд идущих минут. Максимальное количество показаний, которое может передать камера, не превышает 1440.
12 слайд
Задание 6
Имеется набор данных, состоящий из пар положительных целых чисел. Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел не делилась на 3 и при этом была максимально возможной.
Если получить требуемую сумму невозможно, в качестве ответа нужно выдать 0.
13 слайд
Пример входных данных для варианта Б:
6
1 3
5 12
6 9
5 4
3 3
1 1
Пример выходных данных для приведённых выше примеров входных данных:
32
14 слайд
15 слайд
Задание 7
uroEnglish
(Время: 1 сек. Память: 16 Мб Сложность: 55%)
Европейская комиссия планирует принять решение о том, что официальным языком Евросоюза станет английский. Был также разработан план упрощения английской письменности, который планируется реализовать за четыре года.
Первоочередной задачей будет избавление от буквы c, которая в сочетаниях сi и сe будет изменяться на s, в сочетании ck — опускаться, а в остальных случаях заменяться на k. При этом все замены будут производиться в строгом порядке слева направо. То есть, например, в слове success сначала первая из двух букв c заменится на k, а затем вторая — на s, то есть получится suksess. А слово cck превратится в kk.
На второй год из английских слов изымут все удвоенные буквы: ee изменят на i, oo - на u, a в остальных комбинациях будут просто писать одну букву вместо двух одинаковых. Такие замены также будут делать строго в порядке слева направо. Так, слово ooo превратится в uo, а oou — просто в u (в нем сначала oo заменится на u, а затем uu — на u), слово iee превратится в i (в нем сначала ee заменится на i, а затем ii — на i).
На третий год на конце слова станут опускать букву е, если она не единственная буква в слове.
Наконец, завершением реформы станет отмена артиклей (в английском языке три артикля: а, an и the). При этом удаляться эти артикли будут только тогда, когда они в исходном тексте были словами a, an, the. То есть, например, текст the table после реформ первых трех лет превратиться в th tabl, а после реформы четвертого года — просто в tabl. А слово aaaaa после реформы первых лет станет словом a, но поскольку изначально оно не было словом a (артиклем), то оно в итоге так и останется словом a.
Напишите программу, которая будет переводить классический английский текст на Eвроинглиш.
Входные данные
16 слайд
Во входном файле INPUT.TXT записана одна строка текста, состоящая не более чем из 200 символов: английских строчных и заглавных букв, пробелов и знаков препинания (в тексте могут встречаться: точка, запятая, вопросительный и восклицательный знаки, двоеточие, тире, точка с запятой, открывающаяся и закрывающаяся скобки, апострофы, кавычки). Заглавные буквы могут встречаться только в начале слова. Нигде подряд не могут стоять два пробела. В начале и в конце строки не может стоять пробел. Слова отделяются друг от друга пробелами и/или знаками препинания.
Выходные данные
В выходной файл OUTPUT.TXT нужно выдать преобразованную строку при ограничениях:
начинаться с заглавной буквы должны те и только те слова, которые начинались с заглавной буквы в исходном тексте;
не должно встречаться двух пробелов подряд;
пробелы между словами и знаками препинания должны остаться там и только там, где они были в исходной строке, в начале и в конце строки пробелов быть не должно.
Примеры
№INPUT.TXTOUTPUT.TXT
1cacao and coffeekakao and kofi
2Cinderella! Where Is The Dress???Sinderela! Wher Is Dres???
3'A' is a letter'' is leter
4!!!Hello!!!A-the-"word"!!!Helo!!!--"word"
5Aaaa then the ckckckA then k
6"A"-the an""-
7A the an
8successsukses
17 слайд
Решение
s=input().split()
l=len(s)
i=0
# удаляем артикли
while i!=l:
if s[i] =='the' or s[i] =='The' or s[i] =='a' or s[i] =='A' or s[i] =='an':
s.pop(i)
l=l-1
i=i+1
print(s)
18 слайд
s=input().split()
l=len(s)
i=0
# Удаляем артикли – другой вариант
mn={'the','The','a','A','an','An'}
while i!=l:
if s[i] in mn:
s.pop(i)
l=l-1
i=i+1
print(s)
19 слайд
Оптимизация ci,ce,ck
s1=''
for i in range(len(s)):
b=list(s[i])
l=len(b)
j=0
while j!=l:
if b[j]=='c':
b[j]='k'
if l==len(b)-1:
if b[j]+b[j+1]=='ci' or b[j]+b[j+1]=='ce':
b[j]='s'
b.pop(j+1)
l=l-1
s1=s1+b[j]
j=j+1
s1=s1+' '
print(s1)
Рабочие листы
к вашим урокам
Скачать
6 669 347 материалов в базе
Настоящий материал опубликован пользователем Богомолова Любовь Владиславовна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт
Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.
Удалить материалВаша скидка на курсы
40%Курс профессиональной переподготовки
500/1000 ч.
Курс профессиональной переподготовки
300/600 ч.
Курс профессиональной переподготовки
300 ч. — 1200 ч.
Курс профессиональной переподготовки
300/600 ч.
Мини-курс
6 ч.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.