Приложение как известно n 1
Чтение — один из самых эффективных методов изучения английского языка.
Оно доступно всем и не требует преподавателя. Когда мы читаем текст, который нам нравиться, время летит незаметно. Слова учатся сами собой. И наша мотивация учить язык поднимается.
Если вы решили читать на английском, следующие приложения будут вам полезны.
1. Read’n’Click
(Браузерное расширение: Chrome, Yandex browser, Opera)
- Работает на всех сайтах (вы сами выбираете статьи и книги, которые хотите читать)
- Онлайн переводчик. Установка в браузер за 10 секунд.
- Английская транскрипция и произношение.
- Ссылки на уроки по произношению сложных слов.
- Добавляй слова и фразы в личный словарь.
- Карточки для заучивания слов.
- Выделение слов и фраз в текстах для лучшего запоминания.
- Статистика.
Платная версия: 300 рублей в месяц
- Перевод на 2 языка для тех, кто уже знает иностранные языки
- Безлимитный личный словарь
Укажите промокод A2B2 при регистрации и увеличьте личный словарь на 200 бесплатных слов.
После регистрации пригласите друзей с помощью своего промокода, чтобы расширить бесплатный лимит личного словаря.
2. LingQ
Известное приложение от канадского полиглота Стива Кауффмана. Уже содержит большое количество текстов для чтения на разных языках.
К сожалению заранее, не всегда понятно, о чем текст и форматирование не всегда удачное.
С помощью специального расширения можно импортировать свои тексты.
Платная версия: 13 долларов в месяц.
По сути только с подпиской вы получаете возможность пользоваться приложением. В бесплатной версии можно только читать (без перевода).
3. Bookmate
Удобная читалка. Книги в оригинале, так что подойдет не всем.
- Перевод слов и фраз
- Выделение цветом
- Добавление комментариев
- Сохранение цитат
Платная версия: 333 рубля в месяц
Становится доступен перевод.
4. Readlang
(Браузерное расширение: Chrome, Fire Fox)
Позволяет учиться по любым текстам в интернете. Если текст содержит рекламу и другой мусор, его можно импортировать в специальную читалку.
- Работает на всех сайтах
- Перевод слов и фраз.
- Карточки для заучивания слов.
Перевод показывается над словом, из-за этого портиться форматирование текста.
Платная версия: 5 долларов в месяц.
Позволяет переводить безлимитное количество фраз.
5. Simple translate
(Браузерное расширение: Сhrome, Fire Fox)
Бесплатное браузерное расширение. Просто переводит выбранные слова и фразы. Работает на всех сайтах. Подойдет тем, кто не хочет заморачиваться с заучиванием новых слов.
Бесплатно
6. 2Books
Читалка с английскими книгами. Есть книги для всех уровней, включая начинающих
При клике на слово показывается это же слово в русском фрагменте. Подход необычный, но к сожалению не помогает переводить фразы.
Бесплатно
7. Duolingo
У большинства данное приложение ассоциируется с упражнениями, но у них есть коротенькие истории, которые хорошо подойдут для начинающих.
Истории зачитывают дикторы, походу даются вопросы (вставить слово, выбрать фразу и т.д.)
Бесплатно
8. Newsinlevels
Каждый день на сайте появляются небольшие новостные заметки. Каждая адаптирована для трех разных уровней.
Задача 1. Как известно, натуральное число N > 1 называется простым, если оно делится нацело только на себя и на единицу. В противном случае число N называется составным и может быть представлено как произведение простых чисел. В этом случае говорят, что N разложено на простые сомножители. Напишите программу, которая по заданному натуральному N > 1 определяет количество простых сомножителей в его разложении.
С клавиатуры вводится натуральное число N, находящееся в диапазоне от 2 до 2000000000.
Выходные данные.
На экран выводится одно число — количество простых сомножителей в его разложении. В случае, если N окажется простым, на экране печатается число 1
Задача 2 . Петя придумал способ кодирования натуральных десятичных чисел латинскими буквами a, b и c. Чтобы закодировать число его способом, надо каждую цифру этого числа заменить буквосочетанием в соответствии со следующей таблицей:
Ее код
Имя входного файла вводится с клавиатуры.
Во входном файле записана единственная строка, содержащая только маленькие латинские буквы a, b, c и имеющая длину не более 250 символов.
Выходные данные.
На экран выводится восстановленное число или слово «No».
Задача 3 . В Костроме, как известно, проезд на городском общественном транспорте составляет 12 рублей на всех маршрутах. Однако, далеко не всегда можно проехать с одной остановки на другую за эти деньги: иногда приходится ехать с пересадками.
В городе имеется некоторое количество маршрутов, пронумерованных натуральными числами от 1 до N. Каждый маршрут включает в себя несколько остановок. Если через одну и ту же остановку проходит сразу несколько маршрутов, то на ней можно сделать пересадку с любого, проходящего через нее маршрута, на любой другой (опять же проходящий через нее). Напишите программу, которая определяет минимальную стоимость проезда с остановки A на остановку B.
Имя входного файла вводится с клавиатуры.
Во входном файле в первой строке записаны два числа, разделенных пробелом: сначала число N – количество остановок в городе (2 ≤ N ≤ 100), затем число M – количество маршрутов (1 ≤ M ≤ 20). Во второй строке файла также записаны два числа, разделенных пробелом: номера остановок A и B. Далее идет описание M маршрутов. Описание каждого маршрута занимает одну строку файла; оно состоит из числа Pi — количество остановок на i-ом маршруте (2 ≤ Pi ≤ 30) и затем Pi чисел, задающих номера остановок, через которые проходит i-й маршрут.
Выходные данные.
На экран выводится минимальная стоимость переезда. Если добраться с остановки A на остановку B невозможно, на экране печатается число –1 (минус один).
Задача 4. Для заданного натурального числа N подсчитать количество натуральных чисел K £ N, имеющих в своей двоичной записи ровно три значащих нуля.
Примечание. Первая слева ненулевая цифра в записи числа и все цифры правее ее называются значащими. Таким образом, незначащими оказываются только лидирующие нули.
С клавиатуры вводится натуральное число N, находящееся в диапазоне от 8 до 2000000000.
В этой статье мы познакомимся с основными терминами и определениями Теории графов. Каждый термин схематично показан на картинках.
Самый объёмный модуль на курсе «Алгоритмы и структуры данных» посвящён теории графов.
Граф - это топологичекая модель, которая состоит из множества вершин и множества соединяющих их рёбер. При этом значение имеет только сам факт, какая вершина с какой соединена.
Например, граф на рисунке состоит из 8 вершин и 8 рёбер.
Очень многие задачи могут быть решены используя богатую библиотеку алгоритмов теории графов. Для этого достаточно лишь принять объекты за вершины, а связь между ними - за рёбра, после чего весь арсенал алгоритмов теории графов к вашим услугам: нахождение маршрута от одного объекта к другому, поиск связанных компонент, вычисление кратчайших путей, поиск сети максимального потока и многое другое.
В этой статье мы познакомимся с основными терминами и определениями теории графов. На курсе “Алгоритмы и Структуры данных” в компании Отус “Теория графов” изучается в самом объёмном модуле из 6 вебинаров, где мы изучаем десяток самых популярных алгоритмов.
Вершина - точка в графе, отдельный объект, для топологической модели графа не имеет значения координата вершины, её расположение, цвет, вкус, размер; однако при решении некоторых задачах вершины могут раскрашиваться в разные цвета или сохранять числовые значения.
Ребро - неупорядоченная пара двух вершин, которые связаны друг с другом. Эти вершины называются концевыми точками или концами ребра. При этом важен сам факт наличия связи, каким именно образом осуществляется эта связь и по какой дороге - не имеет значения; однако рёбра может быть присвоен “вес”, что позволит говорить о “нагруженном графе” и решать задачи оптимизации.
Инцидентность - вершина и ребро называются инцидентными, если вершина является для этого ребра концевой. Обратите внимание, что термин “инцидентность” применим только к вершине и ребру.
Смежность вершин - две вершины называются смежными, если они инцидентны одному ребру.
Смежность рёбер - два ребра называются смежными, если они инцедентны одной вершине.
Говоря проще - две вершины смежные, если они соединены ребром, два ребра смежные - если они соединены вершиной.
Петля - ребро, инцидентное одной вершине. Ребро, которое замыкается на одной вершине.
Псевдограф - граф с петлями. С такими графами не очень удобно работать, потому что переходя по петле мы остаёмся в той же самой вершине, поэтому у него есть своё название.
Кратные рёбра - рёбра, имеющие одинаковые концевые вершины, по другому их называют ещё параллельными.
Мультиграф - граф с кратными рёбрами.
Псевдомультиграф - граф с петлями и кратными рёбрами.
Степень вершины - это количество рёбер, инцидентных указанной вершине. По-другому - количество рёбер, исходящих из вершины. Петля увеливает степень вершины на 2.
Изолированная вершина - вершина с нулевой степенью.
Висячая вершина - вершина со степенью 1.
Подграф. Если в исходном графе выделить несколько вершин и несколько рёбер (между выбранными вершинами), то мы получим подграф исходного графа.
Идея подграфов используется во многих алгоритмах, например, сначала создаётся подграф их всех вершин без рёбер, а потом дополняется выбранными рёбрами.
Полный граф - это граф, в котором каждые две вершины соединены одним ребром.
Сколько рёбер в полном графе? Это известная задача о рукопожатиях: собралось N человек (вершин) и каждый с каждым обменялся рукопожатием (ребро), сколько всего было рукопожатий? Вычисляется как сумма чисел от 1 до N - каждый новый участник должен пожать руку всем присутствующим. Сумму нужно разделить на два, так как в этом случае каждое рукопожатие посчитается дважды: N * (N - 1) / 2.
Регулярный граф - граф, в котором степени всех вершин одинаковые.
Двудольный граф - если все вершины графа можно разделить на два множества таким образом, что каждое ребро соединяет вершины из разных множеств, то такой граф называется двудольным. Например, клиент-серверное приложение содержит множество запросов (рёбер) между клиентом и сервером, но нет запросов внутри клиента или внутри сервера.
Планарный граф. Если граф можно разместить на плоскости таким образом, чтобы рёбра не пересекались, то он называется “планарным графом” или “плоским графом”.
Если это невозможно сделать, то граф называется “непланарным”.
Минимальные непланарные графы - это полный граф К5 из 5 вершин и полный двудольный граф К3,3 из 3+3 вершин (известная задача о 3 соседях и 3 колодцах). Если какой-либо граф в качестве подграфа содержит К5 или К3,3, то он является непланарным.
Путь или Маршрут - это последовательность смежных рёбер. Обычно путь задаётся перечислением вершин, по которым он пролегает.
Длина пути - количество рёбер в пути.
Цепь - маршрут без повторяющихся рёбер.
Простая цепь - цепь без повторяющихся вершин.
Цикл или Контур - цепь, в котором последняя вершина совпадает с первой.
Длина цикла - количество рёбер в цикле.
Самый короткий цикл - это петля.
Цикл Эйлера - цикл, проходящий по каждому ребру ровно один раз. Эйлер доказал, что такой цикл существует тогда, и только тогда, когда все вершины в связанном графе имеют чётную степень.
Цикл Гамильтона - цикл, проходящий через все вершины графа по одному разу. Другими словами - это простой цикл, в который входят все вершины графа.
Взвешенный граф - граф, в котором у каждого ребра и/или каждой вершины есть “вес” - некоторое число, которое может обозначать длину пути, его стоимость и т. п. Для взвешенного графа составляются различные алгоритмы оптимизации, например поиск кратчайшего пути.
Пока ещё не придуман алгоритм, который за полиномиальное время нашёл бы кратчайший цикл Гамильтона в полном нагруженном графе, однако есть несколько приближённых алгоритмов, которые за приемлимое время находят если не кратчайший, то очень короткий цикл, эти алгоритмы мы также рассматриваем на курсе Отуса - “Алгоритмы и структуры данных”.
Связный граф - граф, в котором существует путь между любыми двумия вершинами.
Дерево - связный граф без циклов.
Между любыми двумя вершинами дерева существует единственный путь.
Деревья часто используются для организации иерархической структуры данных, например, при создании двоичных деревьев поиска или кучи, в этом случае одну вершину дерева называют корнем.
Лес - граф, в котором несколько деревьев.
Ориентированный граф или Орграф - граф, котором рёбра имеют направления.
Дуга - направленные рёбра в ориентированном графе.
Полустепень захода вершины - количество дуг, заходящих в эту вершину.
Исток - вершина с нулевой полустепенью захода.
Полустепень исхода вершины - количество дуг, исходящих из этой вершины
Сток - вершина с нулевой полустепенью исхода.
Компонента связности - множество таких вершин графа, что между любыми двумя вершинами существует маршрут.
Компонента сильной связности - максимальное множество вершин орграфа, между любыми двумя вершинами которого существует путь по дугам.
Компонента слабой связности - максимальное множество вершин орграфа, между любыми двумя вершинами которого существует путь по дугам без учёта направления (по дугам можно двигаться в любом направлении).
Мост - ребро, при удалении которого, количество связанных компонент графа увеличивается.
Это только основные термины и определения теории графов, которые мы рассматриваем на первом вебинаре модуля “Теория графов”. Цель статьи - дать наглядное и понятное представление об этих терминах, для чего и были нарисованы эти картинки.
Проверяемые элементы содержания: Знание основных понятий и законов математической логики
Плейлист видеоразборов задания на YouTube:
Задания с множествами
15_16. Решение 15 задания (№ 95, К. Поляков):Элементами множества А являются натуральные числа. Известно, что выражение
истинно (т. е. принимает значение 1) при любом значении переменной х .
Определите наименьшее возможное значение суммы элементов множества A .
Ответ: 12
Элементами множества А являются натуральные числа. Известно, что выражение
истинно (т. е. принимает значение 1) при любом значении переменной х .
Определите наименьшее возможное значение суммы элементов множества A .
Ответ: 18
Элементами множеств А , P , Q являются натуральные числа, причём P = , Q = . Известно, что выражение
истинно (т. е. принимает значение 1) при любом значении переменной х .
Определите наибольшее возможное количество элементов в множестве A .
Ответ: 7
15_20. Решение 15 задания (Вариант 100, К. Поляков): Закон поглощенияЭлементами множества А являются натуральные числа. Известно, что выражение
истинно (т. е. принимает значение 1) при любом значении переменной х .
Определите наименьшее возможное количество элементов множества A.
Ответ: 1
Задания с отрезками на числовой прямой
Отрезки на числовой прямой:
Задание 15 (18) ЕГЭ по информатике 2017 ФИПИ вариант 17 (Крылов С.С., Чуркина Т.Е.):На числовой прямой даны два отрезка: P=[44,48] и Q=[23,35].
Укажите наибольшую возможную длину отрезка А, для которого формула
тождественно ложна, то есть принимает значение 0 при любом значении переменной x.
Ответ: 4
Отрезки на числовой прямой:
Разбор 15 (18) задания ЕГЭ по информатике, вариант 5 (ФИПИ, «ЕГЭ информатика и ИКТ, типовые экзаменационные варианты 2018», С.С. Крылов, Т.Е. Чуркина):На числовой прямой даны два отрезка: P = [10,20] и Q = [30,40].
Укажите наибольшую возможную длину отрезка A, для которого формула
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
Ответ: 10
Отрезки на числовой прямой:
Вариант 6: ФИПИ, «ЕГЭ информатика и ИКТ, типовые экзаменационные варианты 2018», С.С. Крылов, Т.Е. Чуркина:На числовой прямой даны два отрезка: P = [3, 20] и Q = [6, 12].
Укажите наибольшую возможную длину отрезка A, для которого формула
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
Ответ: 8
- Упростим выражение, введя обозначения:
- Запишем формулу с новыми обозначениями, учитывая, что по условию она должна быть тождественно истинной:
- Избавимся от импликации:
Далее возможно 2 способа решения.
Отрезки на числовой прямой:
Вариант 7: ФИПИ, «ЕГЭ информатика и ИКТ, типовые экзаменационные варианты 2018», С.С. Крылов, Т.Е. Чуркина:На числовой прямой даны два отрезка: P = [11, 21] и Q = [15, 40].
Укажите наибольшую возможную длину отрезка A, для которого формула
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
Ответ: 19
Задания с ДЕЛ
Поиск наибольшего А, известная часть Дел ∨ Дел = 1
15_7. Решение 15 задания (Вариант 133, К. Поляков) : Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наибольшего натурального числа А формула
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Ответ: 8
Далее можно решать задание либо с помощью кругов Эйлера, либо с помощью логических рассуждений.
Решение с помощью логических рассуждений:
Решение с помощью кругов Эйлера:
Результат: 8
for A in range(1,500): OK = 1 for x in range(1,1000): OK *= ((x % 40 == 0) or (x % 64 == 0))<=(x % A== 0) if OK: print( A )
begin for var A := 1 to 500 do begin var ok := 1; for var x := 1 to 1000 do begin if (((x mod 40 = 0) or (x mod 64 = 0)) <= (x mod A = 0)) = false then begin ok := 0; break; end; end; if (ok = 1) then print(A) end; end.
Результат: 8
Поиск наименьшего А, известная часть Дел ∧ ¬Дел = 1
15_5. Разбор 15 задания (Вариант 138, К. Поляков) : Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наименьшего натурального числа А формула
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Ответ: 3
Избавимся от импликации:
-
Из общего выражения:
for A in range(1,50): OK = 1 for x in range(1,1000): OK *= (x % A == 0) <= ((x % 28 != 0) or (x % 42== 0)) if OK: print( A ) break
begin for var A := 1 to 50 do begin var ok := 1; for var x := 1 to 1000 do begin if (x mod A = 0) <= ((x mod 28 <> 0)or (x mod 42 = 0)) = false then begin ok := 0; break; end; end; if (ok = 1) then begin print(A); break; end end; end.
Результат: 3
15_6. Разбор 15 задания (Вариант 136, К. Поляков) : Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наименьшего натурального числа А формула
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Ответ: 285
- Введем обозначения:
- Перепишем исходную формулу, согласно введенным обозначениям. Укажем, что формула должна быть тождественно истинна (по условию):
- Избавимся от импликации:
- Разделим данную формулу на две части: в одной из них - искомое A, а в другой - часть формулы с x, которую можно найти:
- Начнем с известной части - части 2 формулы. В ней находится операция конъюнкция, которую проще найти, когда все ее операнды равны 1 (единственный случай для конъюнкции: 1 ∧ 1 = 1).
- Вторая часть общей формулы может равняться только1, когда ¬A = 0 (если ¬A = 1, то вторая часть может равнять 0, а нам нужно 1) :
- Т.е. получаем:
- Таким образом, имеем:
- Очевидно, что наименьшим x можем взять число 285 (15 * 19 = 285): ДЕЛ(285, 19) и ДЕЛ(285, 15)
- Поскольку мы ищем наименьшее A, такое что: ДЕЛ(x, A) и при этом ДЕЛ(x, 19) и ДЕЛ(x, 15), то нам необходимо найти наименьшее делимое чисел 19 и 15:
- A должно быть таким числом, при котором x принимает единственно возможное (наименьшее) значение 285:
- Таким наименьшим A является само число 285 .
for A in range(1,500): OK = 1 for x in range(1,1000): OK *= ((x % 19 != 0) or (x % 15 != 0))<= (x % A!= 0) if OK: print( A )
OK - переменная-индикатор: если находится такое А при котором, диапазон всех значений x , подставленных в выражение, возвращает истинное значение выражения, то ОК остается равным 1, т.к. используется операция умножения (до цикла ОК необходимо присвоить единице).Следует иметь в виду, что в программировании вместо операции импликация ( -> ) можно использовать нестрогое неравенство: . Т.к. таблица истинности для операции импликация соответствует операции <= :
Задания с поразрядной конъюнкцией
Задание 15 (18) ЕГЭ по информатике 2017 ФИПИ вариант 9 (Крылов С.С., Чуркина Т.Е.): Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Так, например, 12&6 = 11002&01102 = 01002 = 4
Для какого наименьшего неотрицательного целого числа A формула
тождественно ложна (то есть принимает значение 0 при любом неотрицательном значении переменной X)?
Ответ: 3
Стоит заметить, что для такого типа задач, нет универсального единственного решения. Поэтому на видео, расположенном ниже, представлено два варианта решения.Рассмотрим один из вариантов решения:
- Удалим из формулы X&, чтобы сократить ее запись:
- Обратим внимание, что внешней операцией является конъюнкция - логическое умножение:
- Разделим общее выражение на две части относительно внешней операции. Первая часть - неизвестная, искомая, а вторая - известная, ее можно вычислить:
- Выполним некоторые преобразования во второй части формулы:
- Зная свойство импликации, преобразуем формулу (избавимся от импликации в скобках):
Первым делом переводим 160 в двоичную систему счисления удобным для вас способом. Результат: 10100000. Затем идём по пунктам 1-4 в обратном порядке. 4. Убираем 0, 3. Убираем 0, 2. Убираем 0, 1. Переводим в десятичную систему число 10100 = 20. Так как 20 преобразуется ровно в 160, то нам нужно увеличить число до минимального большего целого числа. Получим 21, это и будет искомое число.
Определите, при каком наименьшем введённом значении переменной s программа выведет число, превосходящее 2000.Python
Данную задачу можно решать и на компьютере через перебор и на листочке логически. Проще конечно же на компьютере, поэтому берём данный нам код и оборачиваем в цикл с условием n < 2000.for s in range(1, 2000):
Музыкальный фрагмент был записан в формате моно, оцифрован и сохранён в виде файла без использования сжатия данных. Размер полученного файла – 72 Мбайт. Затем тот же музыкальный фрагмент был записан повторно в формате стерео (двухканальная запись) и оцифрован с разрешением в 3 раза выше и частотой дискретизации в 4,5 раза меньше, чем в первый раз. Сжатие данных не производилось. Укажите размер файла в Мбайт, полученного при повторной записи.
Решается данная задачи буквальным повторением всех действий с размером файла.
72*2 = 144 (формат стерео) 144 *3 = 432 (разрешение в 3 раза выше) 432/4,5 = 96 (частота дискретизации в 4,5 раз меньше)
В слове АВРОРА 4 повторяющиеся буквы: две А и две Р. Обозначим остальные буквы как *. Четыре буквы АР могут стоять как: АР АР; АР РА; РА АР; РА РА. Сначала возьмём вторую и третью комбинации. В них повторяющиеся буквы обязательно должны быть разделены. Обозначим позиции для ОВ: *А*Р**Р*А*. Количество слов равно число позиций на число свободных букв в периоде = 6 * 2! = 12, для комбинации 3 будет столько же, к ответу прибавляем = 0 + 12 *2 = 24. А теперь возьмём первую и четвёртую. *АР*АР, *АРА*Р, *АРАР*, А*Р*АР, А*РА*Р, А*РАР*, АР*А*Р, АР*АР*, АРА*Р*, **АРАР, А**РАР, АР**АР, АРА**Р, АРАР**, АРАР**, число слов = 15 * 2! = 60, прибавляем к ответу = 24 + 60 = 84
Откройте файл электронной таблицы 9-0.xls, содержащей результаты ежечасного измерения температуры воздуха на протяжении трёх месяцев. В каком количестве измерений в апреле температура оказалась ниже 15 градусов?Первым делом скачиваем таблицу, затем нужно написать формулу, проверяющую условие =ЕСЛИ(B2<15;1;0) в клетке, находящейся под первым столбцом с температурами, затем просто растягиваем эту клетку на 24 клетки вправо и на 30 вниз. Поля со значением меньше 15 пометятся единицей, остальные примут значение 0. Нам остаётся выделить таблицу с единицами и нулями и посчитать сумму очередной формулой.
С помощью текстового редактора определите, сколько раз, не считая сносок, встречается слово «глаза» (со строчной буквы) в тексте романа в стихах А.С. Пушкина «Евгений Онегин» (файл 10-0.docx). Другие формы слова «глаза», такие как «глаз», «глазами» и т.д., учитывать не следует. В ответе укажите только число.Достаточно ввести в поиске по тексту "глаза " (обязательно с пробелом, чтобы отсеять слова по типу "глазах" и т.д.), затем просто считаем слова со строчной буквы.
При регистрации в компьютерной системе каждому пользователю выдаётся идентификатор, состоящий из 8 символов, первый и последний из которых – одна из 18 букв, а остальные – цифры (допускается использование 10 десятичных цифр). Каждый такой идентификатор в компьютерной программе записывается минимально возможным и одинаковым целым количеством байт (при этом используют посимвольное кодирование; все цифры кодируются одинаковым и минимально возможным количеством бит, все буквы также кодируются одинаковым и минимально возможным количеством бит). Определите объём памяти в байтах, отводимый этой программой для записи 500 паролей.Согласно условию, в идентификаторе могут быть использованы 18 букв. Известно, что с помощью N бит можно закодировать 2^N различных вариантов. Поскольку 2^4 < 18 < 2^5, то для записи каждой из 18 букв необходимо 5 бит. Аналогично для цифр 2^3 < 10 < 2^4 для записи каждой из 10 цифр необходимо 4 бита.
Для хранения всех 8 символов идентификатора нужно 5·2 + 4·6 = 34 бита, а так как для записи используется целое число байт, то берём ближайшее не меньшее значение, кратное восьми: это число 40 = 5·8 бит (5 байт).
Тогда 500 идентификаторов занимают 5·500 = 2500 байт.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (222)
заменить (222, 1)
заменить (111, 2)
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой программы к строке вида 1…12…2 (2019 единиц и 2119 двоек)?
Каждую итерацию число единиц и двоек уменьшается на 2, так как три двойки заменяются на 1 и три единицы заменяются на 2, значит сначала можно вычесть 2018 из числа единиц и двоек (2018 - максимальное число, кратное 2, которое является меньше числа единиц). Получим 1 единицу и 101 двойку. Теперь нужно найти сколько единиц получится при замене двоек с помощью функции. Ближайшее число меньше 101 и кратное 3 равно 99. 99/3 = 33 - столько единиц будет добавлено. Получается 34 единицы и 2 двойки. Сейчас повторяем то же действие, только с единицами. 33 / 3 = 11.
1 единица и 13 двоек. Делаем так, пока не останутся числа, не кратные 3: 5 единиц 1 двойка, 2 единицы 2 двойки.
Но можно решить и программой:
one = 2019
two = 2119
while True:
----if one > 2:
--------one -= 3
--------two += 1
----if two > 2:
--------two -= 3
--------one += 1
----if two <= 2 and one <= 2:
--------break
for i in range(one):
----print("1", end = "")
for i in range(two):
----print("2", end = "")
Читайте также: