1) все (374, 392, 483)
2) Понравились. Смотрел, особенно чтобы разобраться в динамическом программированиии (целый день вникал в решение 483-й задачи, зато потом даже доработал её для чисел с нечётным кол-вом цифр).
3) Когда подпрограмма вызывает сама себя
4) На первое место возможно 10 (0 - 9) и на второе тоже => 10 * 10 = 100 плашек. По скольку 1:2 = 2:1, ответ (100 - 10(кол-во дублей))/2 + 10 (возвращаем дубли) = 55
1. решил все
2. понравились, видеорешение смотрел для 392 задачи. не понял условие
3. рекурсия - вызов методом самого себя
4. получилось 55 (81 с повторами). решал двумя вложенными циклами for от 0 до 9
а почему нельзя купить часть заданий Комбинаторики? я ведь уже 70% сделал
1. Решил все, потому что уже проходил "Комбинаторику".
2. На тот момент, когда я их решал, первая задача показалась простой, вторую и третью тогда плохо понял. Видеорешения смотрел. Сейчас стало понятнее. Конечно, задачи понравились: узнал на старости лет о существовании комбинаторики)))
3. Рекурсия - это вызов(ы) в функции самой себя.
4. Задачка. Если бы в домино были плашки от пусто:пусто до 9:9, то сколько всего плашек было бы в игре? Напиши словами своё решение, по возможности более подробно.
Т.к. количество плашек представляет собой выборку из N по 2, причем одинаковые цифры могут повторяться, то количество плашек равно N в степени 2.
1. 3 (374,392,483)
2. Понравились (особенно 483). Да.
3. Рекурсия - это функция, которая вызывает сама себя.
4. Ответ: 55
int dominoshka=0;
for (int i=0; i<10; i++) // перебираем первую половину доминошки
for (int j=i; j<10; j++) // перебираем вторую половину доминошки
dominoshka++;
Console.WriteLine(dominoshka);
1. одну №1
2. понравились. видеорешение смотрел только у первой задачи
3. рекурсия - это когда функция вызывает сама себя
4. 55. Два вложенных цикла от 0 до 9 в конце каждого первого цикла кол-во повторов плашек возрастает на 1, их нужно отнимать от общего числа комбинаций.
1. я решил 374, 392 частично динамикой, 483 оптимизировал свое прошлое решение в соответствии с разбором
2. задачи понравились. напомнили задачки по программированию, которые решали на первом курсе. Разборы посмотрел после того, как решил задачки.
3. Рекурсия - это вызов функцией самой себя прямо или косвенно.
4. для каждой стороны плашки - 10 различных состояний, следовательно всего 10^2 вариантов сочетаний. Элементарно :)
1.1
2. Да
3. Многократный вызов функцией самой себя.
4. 55. int count=0; for (int i=0; i<10; i++) for (int j=i; j<10; j++) count++;
1. 0
2. да, смотреть буду
3. Да, это цикл тобиш функция вызывает сама себя, и в ходе выполнения этой функции она должна что-то менять, и у неё должен быть конец!!!
4. 81, я долго не думал может быть и не правильно
1. Решила только:
374 задача. Счастливые билеты 6. Вложенные циклы
392 задача. Счастливые билеты N. Рекурсия
2. Да, задачи интересные, хотя для меня и сложные. Без видео бы не решила, увидела разный подходы к решению задачи, а так же как можно увеличить скорость работы программы! :)
3. Рекурсия это много кратное отражение самого себя, как в двух зеркала поставленные друг против друга.
4. Получилось бы: 10 плашек (с девятками) + 9 плашек (с восьмерками) + 8 плашек (с семерками) + 7 плашек (с шестерками) + 6 плашек (с пятерками) + 5 плашек (с четверками) + 4 плашки (с тройками) + 3 плашки (с двойками) + 2 плашки (с единицей) + 1 плашка (пусто-пусто) = 55 плашек!
решила бы:
int p = 1;
for (int j = 1; j <= 10; j++)
p +=j;
Console.WriteLin( p ) :)
1. Решил первых две. (1 и 2)
2. Когда то любил такие задачи, перерешал их много, участвовал в олимпиадах в школьные годы и когда учился в академии, там все задачи на рекурсию, графы, комбинаторику. Давно это было, поэтому и было интересно все это вспомнить. Видеорешения смотрел. Новое было из динамического программирования: за этот алгоритм я читал, но реализовать было лениво ибо не совсем вкуривал) Поэтому с интересом его просмотрел. Написать его хоть и можно скопипастив и времени не много потерять, но я тут на двух курсах сразу еще)) Не успеваю там, много сложных для меня домашек, плюс свой проект, плюс еще работать надо на хлеб насущный) Как то так...
3. Рекурсия - это функция, которая вызывает сама себя.
4. Само просто это посчитать так, как мы формировали домино в два цикла:
int count=0; for (int i=0; i<10; i++) for (int j=i; j<10; j++) count++;
Пишу с ходу без проверки, надеюсь не ошибся)
1. 0
2. -
3. Рекурсия - это когда функция вызывает сама себя. То есть при вызове некой функции, она обращается к себе же.
4. Я бы решила эту задачу с помощью цикла в цикле.
int k=0;
for (int i=0; i<=9; i++)
for (int j=0; j<=9; j++)
k++;
# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
без видео 2 теста |
|||
«Человеку свойственна итерация, Мы начнём наш курс с такой интересной и трепетной темы, как РЕКУРСИЯ. Вокруг рекурсии ходит множество толков, загадок, непоняток и заблуждений. Сегодня мы один раз и навсегда, просто и понятно выясним, что такое рекурсия и как её понять. Задание: Дать определение рекурсии своими словами. Найти красивую и достойную картинку на тему рекурсии. Видео на этом уроке нет. |
|||||
2 |
![]() |
3 теста |
|||
На вебинаре рассмотрели несколько примеров по созданию рекурсивных алгоритмов. Рассказал основной секрет, как понимать рекурсию. Задание: Нарисовать кривую Гильберта на листе бумаги. |
|||||
3 | Рекурсия. Заливка области |
1 тест |
|||
Пишем алгоритм заливки, как в программе Паинт. | |||||
4 | Рекурсия. Факториал |
1 тест |
|||
На этом уроке мы пойдём в гости к роботу Шарпу. Задание: Решить задачу «Факториал». |
|||||
5 | Рекурсия. Числа Фибоначчи |
1 тест |
|||
На этом уроке мы пойдём в гости к роботу Шарпу. Задание: Решить задачу «Числа Фибоначчи». |
|||||
6 | Рекурсия. Общий делитель |
1 тест |
|||
На этом уроке мы пойдём в гости к роботу Шарпу. Задание: Решить задачу «Общий делитель». |
|||||
7 | Рекурсия. Обратный отсчёт |
1 тест |
|||
На этом уроке мы пойдём в гости к роботу Шарпу. Задание: Решить задачу «Обратный отсчёт». |
|||||
8 | Рекурсия. Фракталы. Спираль |
|
|||
На этом уроке мы сначала сделаем заготовку для рисования линий на форме, а потом нарисуем спираль используя рекурсию. Потом мы её немного изменим, чтобы наша спираль стала настоящим фракталом. |
|||||
9 | Рекурсия. Фракталы. Треугольник Серпинского |
1 тест |
|||
На этом уроке мы будем рисовать треугольник Серпинского. Нам опять поможет рекурсия, которая будет "тройной", потому что на каждом следующем шаге мы будем рисовать три новых треугольника. |
|||||
10 | Рекурсия. Фракталы. Кривая Гильберта |
1 тест |
|||
На этом уроке мы нарисуем кривую Гильберта. Да-да, ту самую, которую ты рисовал на листике в начале курса Комбинаторика. Мы здесь познакомимся с косвенной рекурсией, это когда несколько функций вызывают друг друга. |
|||||
11 | Комбинаторика. Счастливые билеты 6 |
1 тест |
|||
На этом уроке мы рассмотрим самый простой способ решения комбинаторных задач, с использованием вложенных циклов. Задание Решить задачу «Счастливые билеты» |
|||||
12 | Комбинаторика. Счастливые билеты N |
1 тест |
|||
На этом уроке мы рассмотрим два основных способа решения комбинаторных задач: Первый способ - когда известно количество объектов - вложенные циклы. Второй способ - любое количество объектов - использование рекурсии. Задание: Решить задачу «Счастливые билеты N». Скачать книжку для чтения по комбинаторике: Как решать комбинаторные задачи. |
|||||
13 | Комбинаторика. 4 x 4. Ладья x Ферзь |
1 тест |
|||
На этом уроке мы рассмотрим две шахматные задачи, про расстановку ладьей и ферзей на доске, чтобы они не рубили друг друга. Задачи решаются первым способом - перебор вариантов без использования рекурсии. Задание: Решить задачу «Четыре Ладьи». Решить задачу «Четыре Ферзя». |
|||||
14 | Комбинаторика. Много ферзей. Демонстрация |
|
|||
Теперь составим программу для расстановки N ферзей на шахматной доске N x N. Для решения этой задачи нам потребуется рекурсия. А чтобы понять, как она работает - сделаем визуальную демонстрацию процесса работы алгоритма. |
|||||
15 | Комбинаторика. Сложение букв |
1 тест |
|||
Существует серия головоломок на математическое выражение из букв, например: ШРАМ * Ы = ШРАМЫ БУЛОК + БЫЛО = МНОГО Как правило в этих примерах каждой букве соответствует одна цифра. Одинаковым буквам одинаковые цифры, разным буквам - разные цифры. Необходимо решить эту головоломку, то есть разгадать, какой был пример. Для решения этих задач комбинаторика так и напрашивается. Первую задачу мы решим первым способом, через вложенные циклы. Вторую задачу вторым способом, через рекурсию. |
|||||
16 | Комбинаторика. Математические операции |
1 тест |
|||
Продолжаем комбинаторную практику. Дан ряд цифр и одно число, например: 1 2 3 4 5 6 7 8 и 100. Расставить между цифрами знаки "пробел", "умножить", "плюс" и "минус" таким образом, чтобы получилось заданное число. |
|||||
17 | Полуфинальный урок. Ответы на вопросы |
без видео |
|||
Ты уже практически закончил курс «Комбинаторика». Пожалуйста, ответь на несколько вопросов. Эти ответы пригодятся тебе при записи видеоотзыва. (видео в этом уроке нет) |
|||||
18 | Динамика. Поле дураков |
1 тест |
|||
Вступление в тему "Динамическое программирование". Решение олимпиадной задачи "Поле дураков". |
|||||
19 | Динамика. Счастливые билеты 20 |
1 тест |
|||
Решаем уже знакомую задачу новым способом. Начальные данные: число N от 1 до 10. Вывод результата: количество 2N-значных счастливых билетов. Работает - моментально! Рекомендую ознакомиться с публикациями на эту же тему: http://www.sql.ru/forum/932580/posobie-dlya-studentov-i-shkolnikov?mid=15179128#15179128 https://goo.gl/RyNCXH |
|||||
20 | Динамика. Выход из Лабиринта |
1 тест |
|||
Мы рассмотрим наиболее популярный, интересный и полезный алгоритм теории графов: Поиск кратчайшего пути в графе. В основе идеи лежит принцип динамического программирования. В качестве графа у нас будет Лабиринт, мы будем в нём искать кратчайший путь из одной клетки в другую. Прошу перед уроком ознакомиться со следующими материалами: 1. Очередь в C#. 2. Поиск в ширину в графе. |
|||||
21 | ФИНАЛЬНЫЙ УРОК |
|
|||
Задание Записать видео обзор твоих лучших программ этого курса. |
|||||
22 | VIP. Простые числа. Оптимизация алгоритма |
1 тест |
|||
Пишем функцию для поиска простых чисел и поэтапно оптимизируем её в двух направлениях. |
|||||
Итого: 22 видеоурока |
9 час. 57 мин. 21 тест |
29 чел. | |||
Финалисты: Елена, alexmail19Q, Максим Лапшинов, Андрей Поляков, Vera, Иван, Артём, Tekashnik, Михаил Ермишин, Николай, Alcatraz, Den Andreevich, Дмитрий, Иван Воронин, Алексей В., Новопашин Владимир, Сергей Зулкарнаев, Алексей Малышев, Александр, Sergio, Сергей Стефаненко, Денис, chokayes, ser2018, Дмитрий, Илья, Яков, MaxB, Tim . |