Вариант 4 · Июль 2026

ЕГЭ Информатика

Вариант 4 · Июль 2026
27 заданий · свободная тренировка без таймера
  1. 1

    Задание №1

    #69321Анализ матрицы смежности

    На рисунке справа схема дорог N-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах).

      П1 П2 П3 П4 П5 П6 П7 П8
    П1   23   48       31
    П2 23     56 13      
    П3           11 45  
    П4 48 56       89    
    П5   13         33  
    П6     11 89       47
    П7     45   33     28
    П8 31         47 28  


    Так как таблицу и схему рисовали независимо друг от друга, нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова сумма протяжённостей дорог из пункта E в пункт G и из пункта H в пункт B. В ответе запишите целое число.

  2. 2

    Задание №2

    #69305Построение таблицы истинности

    Миша заполнял таблицу истинности логической функции FF

    (¬xy)(wy)z( \neg x \land y ) \lor ( w \equiv y ) \lor z,

    но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

            F
        0 1 0
    1 0   1 0
    1 1 0   0


    Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

  3. 3

    Задание №3

    #69812Базы данных

    В файле приведён фрагмент базы данных «Одежда», принадлежащей предприятию по производству лёгкой одежды. База данных состоит из трёх таблиц.
    Таблица «Ткани» содержит записи о видах тканей, используемых при пошиве. Заголовок таблицы имеет следующий вид.

    ID ткани Название Цвет Плотность, г/м2 Сырьё Ширина полотна, см


    Таблица «Продукция» содержит информацию о моделях выпускаемой одежды. Заголовок таблицы имеет следующий вид. 

    ID товара Наименование товара Размерный ряд Расход материал, см Категория потребителей


    Таблица «Готовый товар» — информацию об уже произведённой фирмой одежде. Заголовок таблицы имеет следующий вид. 

    Артикул ID товара ID ткани Количество на складе, шт Отпускная цена, руб


    На рисунке приведена схема указанной базы данных. 

    Используя информацию из приведённой базы данных, определите общую стоимость (в рублях) всех красных платьев, произведённых на предприятии из хлопковой ткани плотностью не менее 195 г/м2. В ответе запишите только число. 

    43303_3.xlsx

    43303_3.xls

    43303_3.ods

  4. 4

    Задание №4

    #69443Префиксные коды, условие Фано

    По каналу связи передаются шифрованные сообщения, содержащие только семь букв: А, Б, В, Г, Д, Е, Ж. Для передачи используется неравномерный двоичный код. Для букв А, Б, В и Г используются кодовые слова 00, 01, 100, 111 соответственно. Укажите минимальную сумму длин кодовых слов для букв Д, Е и Ж, при которой код будет удовлетворять условию Фано.
    Примечание. Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений.

  5. 5

    Задание №5

    #69656Анализ простейших алгоритмов

    На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:

    1) Строится четверичная запись числа N.
    2) Далее эта запись обрабатывается по следующему правилу:
    а) если число N делится на 4, то к этой записи дописываются две последние четверичные цифры; 
    б) если число N на 4 не делится, то остаток от деления умножается на 2, переводится в четверичную запись и дописывается в конец числа. 

    Полученная таким образом запись является четверичной записью искомого числа R. 

    Например, для исходного числа 11 = 234 результатом является число 23124 = 182, а для исходного числа 12 = 304 это число 30304 = 204.
    Укажите максимальное число N, после обработки которого с помощью этого алгоритма получается число R, меньшее 261.

  6. 6

    Задание №6

    #69441Анализ алгоритмов для исполнителя

    Исполнитель Цапля действует на плоскости с декартовой системой координат. В начальный момент Цапля находится в начале координат, её клюв направлен вдоль положительного направления оси ординат, клюв опущен. При опущенном клюве Цапля оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует три команды: Вперёд n (где n — целое число), вызывающая передвижение Цапли на n единиц в том направлении, куда указывает её клюв; Направо m (где m — целое число), вызывающая изменение направления движения на m градусов по часовой стрелке; Дуга r, a, b (где r, a, b — целые числа), вызывающая передвижение Цапли из текущей точки с координатами (х, у) по дуге полуокружности с центром в точке с координатами (х + a, у + b) и радиусом r, движение по полуокружности идёт по часовой стрелке.
    Запись Повтори k [Команда1 Команда2 … КомандаS] означает, что последовательность из S команд повторится k раз.
    Цапле был дан для исполнения следующий алгоритм:
    Направо 180 Вперёд 3 Направо 90 Вперёд 48 Направо 90 Вперёд 3 Повтори 6 [Дуга 4, 4, 0].
    Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.

  7. 7

    Задание №7

    #69477Кодирование аудио и видео

    Автоматическая камера производит растровые изображения размером 1000 х 3300 пикселей. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков. Объём файла с изображением не может превышать 1320 Кбайт без учёта размера заголовка файла. Какое максимальное количество цветов можно использовать в палитре?

  8. 8

    Задание №8

    #69771Комбинаторика

    Все пятибуквевнные слова, в составе которых могут быть только русские буквы М, А, С, Л, О, записаны в алфавитном порядке и пронумерованы, начиная с 1. Ниже приведено начало списка.
    1. ААААА
    2. ААААЛ
    3. ААААМ
    4. ААААО
    5. ААААС
    6. АААЛА
    ...

    Под каким номером в списке идёт первое слово, которое содержит не более одной буквы А, ровно две буквы М, не содержит ни одной буквы Л?

  9. 9

    Задание №9

    #69230Обработка числовой информации

    Откройте файл электронной таблицы, содержащей в каждой строке четыре натуральных числа. Определите количество строк таблицы, содержащих числа, для которых выполнены оба условия:
    – наибольшее из четырёх чисел меньше суммы трёх других; 
    – четыре числа можно разбить на две пары чисел с равными суммами.
    В ответе запишите только число.

    64759_9.csv

    64759_9.ods

    64759_9.xls

    64759_9.xlsx

  10. 10

    Задание №10

    #69369Поиск слова в тексте

    Определите, сколько раз в тексте романа М. А. Булгакова «Собачье сердце» встречается отдельное слово «начал» со строчной буквы. В ответе укажите только число.

    45357_10.docx

  11. 11

    Задание №11

    #69730Количество информации

    При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 7 символов и содержащий только символы из 26-символьного набора строчных латинских букв и десяти арабских цифр. В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего отведено 9 байт на одного пользователя.
    Определите объём памяти (в байтах), необходимый для хранения сведений о 30 пользователях. В ответе запишите только целое цисло - количество байт.

  12. 12

    Задание №12

    #69727Анализ строковых алгоритмов

    Исполнитель Редактор получает на вход строку цифр и преобразовывает ее. Редактор может выполнить две команды. В обеих командах v и w обозначают цепочки цифр. 
    A) заменить (v, w). 
    Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150. Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
    Б) нашлось (v).
    Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется. 

    Цикл
       ПОКА условие
       последовательность команд
       КОНЕЦ ПОКА
    выполняется, пока условие истинно.

    В конструкции
    ЕСЛИ условие
       ТО команда 1
       ИНАЧЕ команда 2
    КОНЕЦ ЕСЛИ 
    выполняется команда 1 (если условие истинно) или команда 2 (если условие ложно).

    Дана программа для Редактора:
    НАЧАЛО
       ПОКА нашлось (>0) ИЛИ нашлось (>1) ИЛИ нашлось (>2)
          ЕСЛИ нашлось (>0)
             ТО заменить (>0, 22>)
          КОНЕЦ ЕСЛИ
          ЕСЛИ нашлось (>1)
             ТО заменить (>1, 2>)
          КОНЕЦ ЕСЛИ
          ЕСЛИ нашлось (>2)
             ТО заменить (>2, 1>)
          КОНЕЦ ЕСЛИ
       КОНЕЦ ПОКА
    КОНЕЦ

    На вход приведенной выше программы поступает строка, начинающаяся с символа «>», а затем содержащая 15 цифр 0, n цифр 1 и 15 цифр 2, расположенных в произвольном порядке.
    Определите наименьшее значение n, при котором сумма числовых значений цифр строки, получившейся в результате выполнения программы, является простым числом.

  13. 13

    Задание №13

    #69420Маски подсети

    В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Сеть задана IP-адресом 132.72.244.192 и маской сети 255.255.255.240.
    Сколько в этой сети IP-адресов, в двоичной записи которых содержатся три подряд идущие единицы?
    В ответе укажите только число.

  14. 14

    Задание №14

    #69454Анализ выражений

    Операнды арифметического выражения записаны в системе счисления с основанием 21.
    12yx921+36y992112 yx 9_{21} + 36 y 99_{21}
    В записи чисел переменными x и y обозначены две неизвестные цифры из алфавита 21-ричной системы счисления. Определите наименьшее значение х, при котором значение данного арифметического выражения кратно 1810 при любом значении у. Для найденного значения х вычислите частное от деления значения арифметического выражения на 1810 при у = 5 и укажите его в ответе в десятичной системе счисления. Основание системы счисления в ответе указывать не нужно.

  15. 15

    Задание №15

    #69830Сложное логическое выражение

    Для какого наименьшего целого неотрицательного числа A выражение
    (x+2y<A)(y>x)(x>60)( x + 2 y < A ) \lor ( y > x ) \lor ( x > 60 )
    тождественно истинно, т. е. принимает значение 1 при любых целых неотрицательных x и y?

  16. 16

    Задание №16

    #69246Рекурсия

    Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
    F(n) = 1 при n = 1;
    F(n) = n × F(n − 1), если n > 1.
    Чему равно значение выражения F(2023) / F(2020)?

  17. 17

    Задание №17

    #69708Обработка числовой информации

    В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от -10000 до 10000 включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на нечётные цифры, различные для элементов в паре, затем минимальное из произведений модулей элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.

    44124_17.txt

  18. 18

    Задание №18

    #69824Задачи на динамику для таблиц

    Квадрат разлинован на N × N клеток (1 < N < 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю нижнюю. Квадрат ограничен внешними стенами. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может.
    Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
    В «угловых» клетках поля – тех, которые справа и снизу ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой. Таких конечных клеток на поле может быть несколько, включая правую нижнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться.
    Определите максимальную и минимальную денежные суммы, среди всех возможных итоговых сумм, которые может собрать Робот, пройдя из левой верхней клетки в конечную клетку маршрута. В ответе укажите два числа – сначала максимальную сумму, затем минимальную.

    Исходные данные представляют собой электронную таблицу размером N × N, каждая ячейка которой соответствует клетке квадрата. Внутренние и внешние стены обозначены утолщёнными линиями.

    Пример входных данных:

    1 8 8 4
    10 1 1 3
    1 3 12 2
    2 3 5 6

    29836_18.ods

    29836_18.xls

    29836_18.xlsx

  19. 19

    Задание №19

    #69528Теория игр

    Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один камень или увеличить количество камней в куче в два раза.
    Например, имея кучу из 15 камней, за один ход можно получить кучу из 16 или 30 камней. Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 2022. Победителем считается игрок, сделавший последний ход, т. е. первым получивший кучу, в которой будет 2022 или больше камней. В начальный момент в куче было 5 камней, 1 ≤ S ≤ 2020. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от игры противника.
    Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.

  20. 20

    Задание №20

    #69522Теория игр

    Условие игры

    Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) два камня либо увеличить количество камней в куче в два раза.
    Например, пусть в одной куче 10 камней, а в другой 7 камней; такую позицию в игре будем обозначать (10, 7). Тогда за один ход можно получить любую из четырёх позиций: (12, 7), (20, 7), (10, 9), (10, 14). Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 142. Победителем считается игрок, сделавший последний ход, т. е. первым получивший такую позицию, что в кучах всего будет 142 камня или больше. В начальный момент в первой куче было два камня, во второй куче — S камней; 1 ≤ S ≤ 138. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от дальнейшей игры противника. Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети.
    Укажите минимальное значение S, когда такая ситуация возможна.

    Для игры, описанной выше, найдите два наименьших значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
    — Петя не может выиграть за один ход;
    — Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
    Найденные значения запишите в ответе в порядке возрастания.

  21. 21

    Задание №21

    #69518Теория игр

    Условие игры

    Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один камень или увеличить количество камней в куче в два раза.
    Например, имея кучу из 19 камней, за один ход можно получить кучу из 20 или 38 камней. Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 177. Победителем считается игрок, сделавший последний ход, т. е. первым получивший кучу, в которой будет 177 или больше камней. В начальный момент в куче было S камней,
    1 ≤ S ≤ 176. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от игры противника.
    Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.

    Для игры, описанной выше, найдите минимальное значение S, при котором одновременно выполняются два условия:
    — у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
    — У Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.

  22. 22

    Задание №22

    #69685Многопоточность

    В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы могут выполняться только последовательно. В файле информация о процессах представлена в виде таблицы. В первой колонке таблицы указан идентификатор процесса (ID), во второй колонке таблицы — время его выполнения в миллисекундах, в третьей колонке перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс является независимым, то в таблице указано значение 0.
    Типовой пример организации данных в файле:

    ID процесса B Время выполнения процесса B (мс) ID процесса(ов) А
    1 4 0
    2 3 0
    3 1 1; 2
    4 7 3


    Определите минимальное время, через которое завершится выполнение всей совокупности процессов, при условии, что все независимые друг от друга процессы могут выполняться параллельно.
    Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.

    44235_22.xlsx

    44235_22.xls

    44235_22.ods

  23. 23

    Задание №23

    #69573Поиск количества программ

    Исполнитель преобразует число на экране. У исполнителя есть две команды, которые обозначены латинскими буквами:
    А) Вычти 1
    В) Найди целую часть от деления на 2
    Программа для исполнителя — это последовательность команд. Сколько существует программ, для которых при исходном числе 60 результатом является число 1, и при этом траектория вычислений содержит число 20 и не содержит 4? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы.
    Например, для программы АВВ при исходном числе 10 траектория состоит из чисел 9, 4, 2.

  24. 24

    Задание №24

    #69678Обработка строк, нахождение подстроки

    Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите максимальное количество идущих подряд символов, среди которых нет символа Z.
    Для выполнения этого задания следует написать программу.

    44249_24.txt

  25. 25

    Задание №25

    #69215Проверка делимости

    Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: 
    – символ «?» означает ровно одну произвольную цифру; 
    – символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задаватьи пустую последовательность.
    Например, маске 123*4?5 соответствуют числа 123405 и 12300405.

    Среди натуральных чисел, не превышающих 1010, найдите все числа, соответствующие маске 3?12?14*5, делящиеся на 1917 без остатка.
    В ответе запишите в первом столбце таблицы все найденные числа в порядке возрастания, а во втором столбце – соответствующие им результаты деления этих чисел на 1917. Количество строк в таблице для ответа избыточно.

  26. 26

    Задание №26

    #69240Сортировка

    В магазине для упаковки подарков есть N кубических коробок. Самой интересной считается упаковка подарка по принципу матрёшки – подарок упаковывается в одну из коробок, та в свою очередь в другую коробку и т.д. Одну коробку можно поместить в другую, если длина её стороны хотя бы на 3 единицы меньше длины стороны другой коробки. Определите наибольшее количество коробок, которое можно использовать для упаковки одного подарка, и максимально возможную длину стороны самой маленькой коробки, где будет находиться подарок. Размер подарка позволяет поместить его в самую маленькую коробку.
    Входные данные
    В первой строке входного файла находится число N – количество коробок в магазине (натуральное число, не превышающее 10 000). В следующих N строках находятся значения длин сторон коробок (все числа натуральные, не превышающие 10 000), каждое – в отдельной строке. Запишите в ответе два целых числа: сначала наибольшее количество коробок, которое можно использовать для упаковки одного подарка, затем максимально возможную длину стороны самой маленькой коробки в таком наборе.
    Типовой пример организации данных во входном файле
    5
    43
    40
    32
    40
    30
    Пример входного файла приведён для пяти коробок и случая, когда минимальная допустимая разница между длинами сторон коробок, подходящих для упаковки «матрёшкой», составляет 3 единицы. При таких исходных данных условию задачи удовлетворяют наборы коробок с длинами сторон 30, 40 и 43 или 32, 40 и 43 соответственно, т.е. количество коробок равно 3, а длина стороны самой маленькой коробки равна 32.
    Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов.

    59135_26.txt

  27. 27

    Задание №27

    #69213Оптимальный алгоритм для большого количества данных

    Для участников велогонки на каждом километре кольцевой трассыс двусторонним движением установлены пункты питания. Длина кольцевой трассы равна N километров. Нулевой и N-й километры трассы находятся в одной точке. Известно количество комплектов питания в каждом из пунктов на трассе. В каждый пункт комплектыпитания доставляет отдельный электрокар. Стоимость доставки питания вычисляется как произведение количества комплектов питания на расстояние от мобильного цеха их подготовки до пункта питания спортсменов на трассе. Мобильный цех подготовки комплектов расположен в одном из пунктов питания на трассе таким образом, что общая стоимость доставки из цеха во все пункты минимальна. Определите минимальную суммарную стоимость доставки питания для спортсменов из цеха его подготовки в пункты питания на трассе. 
    Входные данные:
    Дано два входных файла (файл A и файл B), каждый из которых в первой строке содержит число N (1 ≤ N ≤ 10 000 000) – количество пунктов питания на кольцевой трассе. В каждой из следующих N строк находится число – количество комплектов питания на пункте (все числа натуральные, количество комплектов питания на каждом пункте не превышает 1000). Числа указаны в порядке расположения пунктов питания спортсменов на трассе, начиная с первого километра. В ответе укажите два числа: сначала значение искомой величины для файла А, затем – для файла B.

    Типовой пример организации данных во входном файле:


    20 

    13 

    19

    При таких исходных данных, если пункты питания установлены на каждом километре трассы, необходимо открыть мобильный цех подготовки комплектов питания для спортсменов в пункте 6. В этом случае сумма транспортных затрат составит: 
    1 ∙ 7 + 0 ∙ 19 + 1 ∙ 8 + 2 ∙ 20 + 3 ∙ 5 + 2 ∙ 13. 
    Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов. 
    Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий сумму для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долг.

    64850_27_A.txt

    64850_27_B.txt