JustCaptain kod-buduschego

update

anc · 1 неделю назад a33efd81ebf0db5852b9ec96a0cc46460ae2a4b0
5 файлов
  • Показать разницуСкрыть разницу
    1 +# 26. Сосуд с водой
    2 +
    3 +| | |
    4 +|---|---|
    5 +| 🎯 **Уровень** | 🟢 Intern |
    6 +| 🔗 **Источник** | Школьный этап ВсОШ по информатике (программирование), платформа «Сириус», октябрь 2026 |
    7 +| 📊 **Сложность** | очень лёгкая |
    8 +| 🏷️ **Темы** | математика, целочисленное деление |
    9 +
    10 +> [!WARNING]
    11 +> Условие **восстановлено по пересказу участника** — официальный текст задачи ещё не опубликован.
    12 +> Формулировки, формат ввода и ограничения могут отличаться от оригинала.
    13 +
    14 +## 📝 Условие
    15 +
    16 +В сосуде изначально находится `n` мл воды. Каждую `a`-ю секунду (на `a`-й, `2a`-й, `3a`-й … секунде) в сосуд капает 1 мл воды, а каждую `c`-ю секунду (на `c`-й, `2c`-й, `3c`-й … секунде) из сосуда выливается 1 мл воды.
    17 +
    18 +Процесс длится `e` секунд. Действия, совершённые на `e`-й (последней) секунде, тоже учитываются. Если на одной секунде вода и капает, и выливается, учитываются оба действия.
    19 +
    20 +Сколько воды останется в сосуде в конце?
    21 +
    22 +## 📥 Входные данные
    23 +
    24 +Четыре целых числа `n`, `a`, `c`, `e` (`n ≥ 0`, `a, c ≥ 1`, `e ≥ 0`) — через пробел или каждое на отдельной строке.
    25 +
    26 +Гарантируется, что вода в сосуде не заканчивается.
    27 +
    28 +## 📤 Выходные данные
    29 +
    30 +Одно целое число — количество воды в сосуде (в мл) после `e` секунд.
    31 +
    32 +> [!TIP]
    33 +> Числа могут быть большими — используйте `long long`.
    34 +
    35 +## 🧪 Тесты
    36 +
    37 +### Тест 1
    38 +
    39 +**Ввод:**
    40 +
    41 +```text
    42 +10 2 3 6
    43 +```
    44 +
    45 +**Вывод:**
    46 +
    47 +```text
    48 +11
    49 +```
    50 +
    51 +### Тест 2
    52 +
    53 +**Ввод:**
    54 +
    55 +```text
    56 +5 1 5 10
    57 +```
    58 +
    59 +**Вывод:**
    60 +
    61 +```text
    62 +13
    63 +```
    64 +
    65 +### Тест 3
    66 +
    67 +**Ввод:**
    68 +
    69 +```text
    70 +7 4 4 9
    71 +```
    72 +
    73 +**Вывод:**
    74 +
    75 +```text
    76 +7
    77 +```
    78 +
    79 +### Тест 4
    80 +
    81 +**Ввод:**
    82 +
    83 +```text
    84 +0 3 7 21
    85 +```
    86 +
    87 +**Вывод:**
    88 +
    89 +```text
    90 +4
    91 +```
    92 +
    93 +---
    94 +
    95 +[⬅️ К списку задач уровня](README.md)
  • Показать разницуСкрыть разницу
    1 −# 🟢 Intern — 25 задач
    1 +# 🟢 Intern — 26 задач
    2 2
    3 3 > Самый старт: ввод/вывод, арифметика, условия и простые циклы. Задачи на 5–15 минут.
    4 4
    31 31 | 23 | [Бегущая сумма](23.%20Бегущая%20сумма.md) | [LeetCode 1480 — Running Sum of 1d Array](https://leetcode.com/problems/running-sum-of-1d-array/) | Easy | массивы, префиксные суммы |
    32 32 | 24 | [Самый богатый клиент](24.%20Самый%20богатый%20клиент.md) | [LeetCode 1672 — Richest Customer Wealth](https://leetcode.com/problems/richest-customer-wealth/) | Easy | двумерные массивы |
    33 33 | 25 | [Склейка массива](25.%20Склейка%20массива.md) | [LeetCode 1929 — Concatenation of Array](https://leetcode.com/problems/concatenation-of-array/) | Easy | массивы |
    34 +| 26 | [Сосуд с водой](26.%20Сосуд%20с%20водой.md) | Школьный этап ВсОШ 2026, «Сириус» · восстановлено по пересказу | очень лёгкая | математика, целочисленное деление |
  • Показать разницуСкрыть разницу
    1 +# 26. Дрон-доставщик
    2 +
    3 +| | |
    4 +|---|---|
    5 +| 🎯 **Уровень** | 🔵 Easy |
    6 +| 🔗 **Источник** | Школьный этап ВсОШ по информатике (программирование), платформа «Сириус», октябрь 2026 |
    7 +| 📊 **Сложность** | лёгкая, много крайних случаев |
    8 +| 🏷️ **Темы** | условия, модуль числа, разбор случаев |
    9 +
    10 +> [!WARNING]
    11 +> Условие **восстановлено по пересказу участника** — официальный текст задачи ещё не опубликован.
    12 +> Формулировки, формат ввода и ограничения могут отличаться от оригинала.
    13 +
    14 +## 📝 Условие
    15 +
    16 +Склад находится в точке `0` на прямой. Два посёлка находятся в точках `x` и `y` этой же прямой (координаты могут быть отрицательными — посёлок может быть по любую сторону от склада).
    17 +
    18 +В первый посёлок нужно доставить заказ массой `m1`, во второй — массой `m2`. Грузоподъёмность дрона — `v`: за один полёт он может нести груз суммарной массой не больше `v`. Заряда батареи хватает на путь длиной не больше `f`. Заряжается дрон только на складе, между полётами.
    19 +
    20 +Один полёт — это вылет со склада, облёт одного или обоих посёлков и возвращение на склад.
    21 +
    22 +Определите наименьшее количество полётов, за которое дрон доставит оба заказа: `1` или `2`. Если доставить оба заказа невозможно, выведите `-1`.
    23 +
    24 +## 📥 Входные данные
    25 +
    26 +В первой строке два целых числа `x` и `y` — координаты посёлков.
    27 +
    28 +Во второй строке два целых числа `m1` и `m2` — массы заказов.
    29 +
    30 +В третьей строке два целых числа `v` и `f` — грузоподъёмность дрона и запас хода на одном заряде.
    31 +
    32 +## 📤 Выходные данные
    33 +
    34 +Одно число: `1`, `2` или `-1`.
    35 +
    36 +## 🧪 Тесты
    37 +
    38 +### Тест 1
    39 +
    40 +**Ввод:**
    41 +
    42 +```text
    43 +3 5
    44 +2 3
    45 +5 10
    46 +```
    47 +
    48 +**Вывод:**
    49 +
    50 +```text
    51 +1
    52 +```
    53 +
    54 +### Тест 2
    55 +
    56 +**Ввод:**
    57 +
    58 +```text
    59 +-3 5
    60 +2 3
    61 +10 12
    62 +```
    63 +
    64 +**Вывод:**
    65 +
    66 +```text
    67 +2
    68 +```
    69 +
    70 +### Тест 3
    71 +
    72 +**Ввод:**
    73 +
    74 +```text
    75 +4 -4
    76 +3 3
    77 +5 20
    78 +```
    79 +
    80 +**Вывод:**
    81 +
    82 +```text
    83 +2
    84 +```
    85 +
    86 +### Тест 4
    87 +
    88 +**Ввод:**
    89 +
    90 +```text
    91 +10 2
    92 +1 1
    93 +5 15
    94 +```
    95 +
    96 +**Вывод:**
    97 +
    98 +```text
    99 +-1
    100 +```
    101 +
    102 +### Тест 5
    103 +
    104 +**Ввод:**
    105 +
    106 +```text
    107 +1 2
    108 +6 1
    109 +5 100
    110 +```
    111 +
    112 +**Вывод:**
    113 +
    114 +```text
    115 +-1
    116 +```
    117 +
    118 +### Тест 6
    119 +
    120 +**Ввод:**
    121 +
    122 +```text
    123 +-6 -2
    124 +4 4
    125 +8 12
    126 +```
    127 +
    128 +**Вывод:**
    129 +
    130 +```text
    131 +1
    132 +```
    133 +
    134 +---
    135 +
    136 +[⬅️ К списку задач уровня](README.md)
  • Показать разницуСкрыть разницу
    1 −# 🔵 Easy — 25 задач
    1 +# 🔵 Easy — 26 задач
    2 2
    3 3 > Массивы, строки, простая жадность и сортировка. Уже нужно думать над идеей, но без сложных алгоритмов.
    4 4
    31 31 | 23 | [Элемент большинства](23.%20Элемент%20большинства.md) | [LeetCode 169 — Majority Element](https://leetcode.com/problems/majority-element/) | Easy | подсчёт, алгоритм Бойера–Мура |
    32 32 | 24 | [Общий префикс](24.%20Общий%20префикс.md) | [LeetCode 14 — Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/) | Easy | строки |
    33 33 | 25 | [Место для вставки](25.%20Место%20для%20вставки.md) | [LeetCode 35 — Search Insert Position](https://leetcode.com/problems/search-insert-position/) | Easy | бинарный поиск |
    34 +| 26 | [Дрон-доставщик](26.%20Дрон-доставщик.md) | Школьный этап ВсОШ 2026, «Сириус» · восстановлено по пересказу | лёгкая | условия, модуль числа, разбор случаев |
  • Показать разницуСкрыть разницу
    1 1 # 🏆 Дополнительные задачи по C++
    2 2
    3 −> **100 задач** для самостоятельной тренировки — от первых `cin`/`cout` до дерева отрезков.
    3 +> **102 задачи** для самостоятельной тренировки — от первых `cin`/`cout` до дерева отрезков.
    4 4 > У каждой задачи есть ссылка на **Codeforces** или **LeetCode**: там полное условие, примеры и автоматическая проверка решения.
    5 5
    6 6 ---
    9 9
    10 10 | Уровень | Задач | Что нужно знать | Рейтинг CF / LeetCode |
    11 11 |---|:-:|---|:-:|
    12 −| 🟢 [**Intern**](1-intern/README.md) | 25 | ввод-вывод, арифметика, `if`, циклы, строки | 800–1000 · Easy |
    13 −| 🔵 [**Easy**](2-easy/README.md) | 25 | массивы, строки, сортировка, простая жадность, `set` / `map` | 800–1200 · Easy |
    12 +| 🟢 [**Intern**](1-intern/README.md) | 26 | ввод-вывод, арифметика, `if`, циклы, строки | 800–1000 · Easy |
    13 +| 🔵 [**Easy**](2-easy/README.md) | 26 | массивы, строки, сортировка, простая жадность, `set` / `map` | 800–1200 · Easy |
    14 14 | 🟠 [**Middle**](3-middle/README.md) | 25 | два указателя, префиксные суммы, бинпоиск, стек, BFS/DFS, базовое ДП | 1100–1700 · Medium |
    15 15 | 🔴 [**Senior**](4-senior/README.md) | 25 | Дейкстра, DSU, дерево отрезков, Фенвик, ДП по отрезкам | 1700–2400 · Hard |
    16 16
    93 93 | 🟦 [Codeforces](https://codeforces.com/problemset) | 52 | олимпиадный формат: читаем из `cin`, пишем в `cout`; рейтинг 800–2400 |
    94 94 | 🟨 [LeetCode](https://leetcode.com/problemset/) | 46 | формат собеседований: реализуем функцию; Easy / Medium / Hard |
    95 95 | ✍️ Авторские | 2 | задачи курса с полным условием и ссылкой на похожую задачу |
    96 +| 🏅 Олимпиады | 2 | задачи школьного этапа ВсОШ 2026 («Сириус»), восстановленные по пересказу участника |
    96 97
    97 98 > [!NOTE]
    98 99 > Как запустить C++ у себя на компьютере — смотри [**«запуск C++ — с чего начать»**](../запуск%20C++%20—%20с%20чего%20начать/README.md).