Имя входного файла: стандартный ввод
имя выходного файла: стандартный вывод
ограничение по времени: 2 секунды
ограничение по памяти: 256 мегабайт
— все шутите?
— давно бросил. врачи запрещают.
— с каких это пор вы стали ходить по
врачам?
— сразу после смерти.
из сценария фильма «тот самый
мюнхгаузен»
барон мюнхгаузен в том самом фильме решил «превратиться» в садовника мюллера. каждый
день он занимался поливом цветов в своём саду. в саду проложены тропинки, и эти тропинки соединяются между собой. можно считать, что тропинки являются рёбрами связного неориентированного графа,а их точки соединения — вершинами. кратные рёбра и петли в этом графе отсутствуют.
тропинки имеют разную длину, в терминах графа длина тропинки — это вес ребра.
поскольку жизнь барона после ухода в садовники стала довольно скучна и однообразна, он
иногда придумывает себе довольно странные развлечения.
путь барона по саду всегда начинается в вершине 1. он выбирает некоторое число k — количество
тропинок по которым он хочет пройти, а затем отыскивает путь минимальной длины, исходящий
из вершины 1 и состоящий из такого количества тропинок. ваша — определить минимально
возможную длину такого пути.
поскольку авторы настаивали на обязательном присутствии её формальной постановки, её ниже
дан связный неориентированный взвешенный граф из n вершин и m рёбер без кратных рёбер и
петель.
дано q запросов. каждый запрос — целое число ki
, нужно найти минимально возможный суммарный вес пути, начинающегося в вершине 1 и состоящего из ki рёбер (вершины и рёбра в пути
могут повторяться).
формат входных данных
в первой строке содержатся целые числа n и m (2 6 n 6 1500, 1 6 m 6 15000) — количество
вершин и количество рёбер графа.
во второй строке содержится m целых чисел from1, from2, . . , fromm, fromi — первый конец
ребра #i.
в третьей строке содержится m целых чисел to1, to2, . . , tom, toi — второй конец ребра #i.
в четвёртой строке содержится m целых чисел w1, w2, . . , wm, wi —вес ребра #i.
ограничения на эти данные: 1 6 fromi
, toi 6 n, fromi 6= toi
, 1 6 wi 6 5 · 108
.
в пятой строке содержится целое число q (1 6 q 6 5 · 105
) — количество запросов.
в шестой строке содержится q целых чисел k1, k2, . . , kq, (0 6 ki 6 109
, k1 < k2 < . . < kq).
формат выходных данных
выведите q целых чисел через пробел — ответы на запросы. каждый ответ — минимально
возможный суммарный вес пути из вершины 1, содержащего ровно ki рёбер (возможны повторения
вершин и рёбер в пути).
Видеоурок
Текстовый урок
Тесты
Во к уроку
На предыдущих уроках мы подробно рассмотрели внутреннее устройство компьютера – его комплектующие и основные внутренние части. Однако для того, чтобы рассматривать современный компьютер как полноценное средство обработки информации (то есть устройство, выполняющее конкретные прикладные задачи), необходимо учесть также и его программное обеспечение, то есть все приложения и службы, установленные на данный компьютер. На сегодняшнем уроке вы познакомитесь с различными видами программного обеспечения, узнаете, для чего нужна та или иная программа и научитесь их устанавливать.
Введение
Что же такое программное обеспечение компьютера? Рассмотрим этот термин подробнее.
Программное обеспечение (ПО) – это все компьютерные программы, процедуры и соответствующая документация и данные, относящиеся к функционированию данной компьютерной системы.
Всё программное обеспечение можно разделить на следующие типы
Виды программного обеспечения
1. Системное программное обеспечение. Это такие программы, которые входят в состав операционной системы и являются составной ее частью. Обычно они обеспечивают управление компонентами компьютерной системы, такими как процессор, оперативная память, устройства ввода-вывода а также сетевое оборудование. Типичным примером для системной программы является драйвер. Драйвер– это компьютерная программа, при которой другие программы получают доступ к аппаратному обеспечению некоторого устройства (например, к принтеру, сканеру, видеокарте и т. д.). Драйверы являются неотъемлемой составляющей операционной системы – совокупность программ, организующих согласованную работу всех модулей компьютера.
2. Обслуживающие программы.К ним относятся те программы, которые выполняют вс обслуживающие либо сервисные функции, например архиваторы, антивирусы и программы для обслуживания жесткого диска компьютера. Программы такого типа также называют утилитами (от англ. utilize – «использовать»).
3. Прикладные программы –это обширный класс программ, предназначенный для решения отдельных определенных пользователем задач, связанных с обработкой данных в определенной области деятельности. К ним можно отнести, например, текстовые, графические, аудио, видео-редакторы, средства управления базами данных, обучающие, тестовые, игровые программы и т. д.
Большинство программ на сегодняшний день создаются с привязкой к конкретной операционной системе (например, Windows, Linux, Android, MacOS) и т. д. Этот факт необходимо обязательно учитывать при выборе той или иной программы.
Перед запуском программы ее нужно правильным образом инсталлировать, то есть установить на данный компьютер. Существуют специальные программы-инсталляторы, например Rpm для ОС Linux или Windows Installer для Windows. Очень часто программы-инсталляторы входят в состав операционной системы по умолчанию. Инсталлировать программу – означает установить (распаковать) все ее значимые файлы в соответствующие директории операционной системы. Для того чтобы программа инсталлировалась верно, она должна содержать так называемый дистрибутив. Дистрибутив программы (от англ. distribute – распределять) – это совокупность компонентов, необходимых для ее установки (инсталляции). Дистрибутив операционной системы обычно содержит в себе программы для начальной инициализации системы.
Обычно на рабочем столе отображаются основные элементы управления графической средой и, опционально, какое-либо фоновое изображение.
В некоторых рабочих средах (например, в MS Windows или в рабочих средах, удовлетворяющих требованиям freedesktop.org — KDE, GNOME и т. п.) с рабочим столом ассоциируется определённый каталог в файловой структуре компьютера (при этом обычно можно перетащить файл из стандартного для данной среды файлового менеджера на рабочий стол, и он будет туда скопирован). Ассоциированный каталог обычно находится в личной папке пользователя.
Так как рабочий стол практически всегда виден (либо его можно увидеть, свернув открытые окна), его используют для хранения часто использующихся файлов, документов и ссылок/ярлыков на них. Определение рабочего стола иногда расширяют, включая в него панель задач.
С точки зрения оконной системы рабочий стол может не являться окном низшего уровня (в системах Windows это можно заметить, завершив процесс «explorer.exe»).
Название «Рабочий стол» (точнее, «крышка рабочего стола», «столешница» — калька с англ. desktop) происходит от сравнения окон со стопкой бумаг, лежащих на столе.