на с++ Министр культуры определил, что фестивали можно проводить только в

На с++ Министр культуры обусловил, что фестивали можно проводить только в субботу 5-го или субботу 6-го числа хоть какого месяца, а также в четверг каждого числа, кратного n (n изменяется от года к году), хоть какого месяца.

Нужно найти все вероятные даты проведения фестивалей на ближний год, если первое января был k-ый денек недели (где k=1 - пн, а k=7 - воскресенье).

Формат входных данных
Вводятся целые неотрицательные числа n (1 lt;= n lt;= 31) и k (1 lt;= k lt;= 7)
Формат выходных данных
Вывести даты в столбик в формате: "14 of June", где June - заглавие месяца (июнь)
Примечания
Наименования месяцев: January (январь), February (февраль), March (март), April (апрель), May (май), June (июнь), July (июль), August (август), September (сентябрь), October (октябрь), November (ноябрь), December (декабрь).

В феврале 28 дней.

Образцы
входные данные выходные данные
27 5
6 of February
6 of March
27 of May
5 of June
6 of November

Задать свой вопрос
1 ответ

Метод решения

Почти никакой арифметики - проходим по всем денькам в году, начиная с первого денька, проверяем условия, обновляем ответ.


Детали

Для удобства заведем постоянный массив чисел - количество дней в каждом месяце. С его помощью мы будет перескакивать из заключительного денька 1-го месяца в 1-ый день последующего.

Нам не необходимо перебегать из декабря в январь!

Также заведем массив строк, хранящий названия каждого месяца.

Будем поддерживать номер текущего денька, номер текущего месяца и каким днем недели является текущий денек. Текущий денек и день недели у нас нумеруются с единицы, месяц - с нуля.

Пока мы не прошли весь декабрь, проверяем условия. 1-ый вариант: dayInWeek == суббота, day == 5 либо day == 6. 2-ой вариант: dayInWeek == четверг, day % n == 0.

Пытаемся перейти на последующий денек. Если следующий денек начнется теснее в следующем месяце, увеличим месяц, денек сбросим до единицы. Ну и обновим денек в неделе: dayInWeek = dayInWeek % 7 + 1.

, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
задание экономиоти Рассмотри ситуацию: человек живёт на Крайнем Се-вере. С помощью каких

Экономика.

Человек живет на Крайнем Севере. С помощью каких благ удовлетворяются потребности

Экономика.

там лежат три яйца.у дома рос клен.Это гнездо сойки.на клёне гнездо

Русский язык.

Тыныштық күйіндегі карусель 35 с-та 3,0 рад/с бұрыштық жылдамдықпен үдей қозғалады.

Разные вопросы.

Сочинение на тему "Русский язык не сможет умереть!"

Математика.

Приветствую! Меня зовут Станислав, я представляю компанию under.site. Хотел бы предложить интересное решение

Разные вопросы.

Масса трёх одинаковых пакетов чая 180г чему равна масса

Математика.

Газообразный аммиак объёмом 2.24 л (н.у.) был полностью поглощён 14.68 мл

Химия.

Упражнение 2 Выпишите глаголы и вставьте пропущенные буквы

Русский язык.

Радиус окружности, описанной около равностороннего треугольника, равен 6. Найдите сторону треугольника

Геометрия.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт