Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Однажды у BS была ужасная бессонница. Потому, он решил прогуляться по западной части ночного Копенгагена. На западе столицы Дании расположен комплекс из нескольких озер, к которым и пришел наш странник. BS выбрал самую удобную скамейку и сел на неё. Скамейка располагалась таким образом, что ему прекрасно были видны два озера и плавающие в каждом из них лебеди. Неожиданно Bjarne достал свой фотоаппарат и сделал фотографию двух озер. Готовился выход нового стандарта С++ 2025, потому бессонница автора продолжалась. И ещё много дней он ходил по ночам на озера, садился на самую удобную скамейку, смотрел на звезды, людей, собак и на другие вещи, но самое главное, каждый день он фотографировал два озера и лебедей. Бессонница прошла и его ночные походы прекратились. Тогда, BS решил изучить сделанные им снимки. По счастливой случайности, оказалось так, что на всех фотографиях комбинация мощностей множеств лебедей в озерах принимала всевозможные значения, при этом отсутствовали симметричные ситуации, это значит, что например двух таких дней с комбинациями (5,200) и (200,5) не было. При этом максимальное значение мощности каждого множества не превышало . Автор решил распечатать все свои фотографии. 1 лебедь занимает 1 пиксель на фотографии, других затрат - нет. Принтер заправлен таким образом, что может распечатать не более чем пикселей. 1. Хватит ли этого, чтобы распечатать все фотографии? 2. Если картриджа не хватит, то как минимум насколько должен быть он заправлен для того, чтобы все фотографии были успешно напечатаны? 3. Подготовьте код программы на С/С++, входным параметром является n, на выходе общее количество лебедей на всех фотографиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 13:45 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Для лучшего понимания стоит уточнить: "на всех фотографиях комбинация мощностей множеств лебедей в озерах принимала всевозможные уникальные значения" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 14:36 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
ИМХУ для лучшего понимания надо ТЗ перевести с русского на понятный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 14:48 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Допустим n=2, в таком случае у него были следующие фотографии: 0 0 0 1 0 2 1 1 1 2 2 2 12 лебедей на всех фотографиях ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 16:28 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercury, Сочиняя задачи, не используй реальных людей в условиях. Глупо смотрится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 19:22 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Как-то... слишком много текста в задаче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 19:49 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercuryДопустим n=2, в таком случае у него были следующие фотографии: 12 лебедей на всех фотографиях Если я правильно понял, то задача сводится к посчитать количество ноликов во всех возможных значениях n-разрядного числа в (n+1)-ричной системе счисления. т.е. Код: plaintext 1. если n = 2, т.е. 2 разряда троичной системы счисления, то f(n) = 6 ноликов (00, 01, 02, 10, 20) итого 2*3^2 - 6 = 12 Выводить формулу f(n) лень, но уже очевидно что возрастает она намного медленнее чем n*(n+1)^n, поэтому достаточно обсчитать до n < 10, когда итого станет больше 1.5*n 2 +501, а все остальное будет "дофига" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 19:54 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Dima TИМХУ для лучшего понимания надо ТЗ перевести с русского на понятный. присоединяюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 23:08 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
А разве 00 11 22 не являются симметричными комбинациями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:16 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
White OwlSashaMercury, Сочиняя задачи, не используй реальных людей в условиях. Глупо смотрится. Если бы я боялся показаться глупым, я бы тут вообще не одного сообщения не отправил. А BS здесь не просто так, ибо решение задачи имеет некоторые детали связанные с языком С++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:22 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
maytonА разве 00 11 22 не являются симметричными комбинациями? Нет, симметричные комбинации вида (x,y) и (y,x). Одна комбинация (x,x) не может быть симметричной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:23 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Лебеди, хоть, не черные? ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:24 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyЛебеди, хоть, не черные? ))) Изначально хотел "усложнить", и написать что в одном озере черные а в другом белые, но потому подумал, что кто-нибудь придерется и скажет, что ночью черных не будет видно)) Кроме того, предполагал сделать три озера, но потому подумал, что решать её никто не станет))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:27 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Пока Дмитрий ближе всех, однако решения в любом случае нет. MasterZivDima TИМХУ для лучшего понимания надо ТЗ перевести с русского на понятный. присоединяюсь. Уже перевел, контрпример очень хороший SSДопустим n=2, в таком случае у него были следующие фотографии: 0 0 0 1 0 2 1 1 1 2 2 2 12 лебедей на всех фотографиях ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 01:33 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercury, ты мне мультик напомнил "Отгадайте в каком ухе жжужит?" У тебя жжужит - ты и гадай. Телепатов тут нет, без правильно написанного ТЗ никто тебе ответ не даст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2016, 19:39 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Надо как в задачнике Перельмана. Там каждая задача - кристально понятна. И написана прекрасным литературным языком. Кратким. Как у Хэмингуэя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 01:00 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercuryДопустим n=2, в таком случае у него были следующие фотографии: 0 0 0 1 0 2 1 1 1 2 2 2 12 лебедей на всех фотографиях С трудом представляю, что непонятного в этом примере? Аналогично для 3: 0 0 0 1 0 2 0 3 1 1 1 2 1 3 2 2 2 3 3 3 30 лебедей на всех фотографиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 03:15 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SSкомбинация мощностей множеств лебедей в озерах принимала всевозможные значения, при этом отсутствовали симметричные ситуации, это значит, что например двух таких дней с комбинациями (5,200) и (200,5) не было. Ниже я добавил, что каждая фотография уникальна, т.е. не было двух дней (x,y) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 03:18 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял, то разряда всего два, система счисления (n+1)ричная и надо посчитать сумму значений всех разрядов где a 1 <= a 0 Тогда надо сумму всех чисел 0 ... n сложить n+2 раз, т.е. формула Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 11:08 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Dima T Тогда надо сумму всех чисел 0 ... n сложить n+2 раз, т.е. формула Почему n+2 раза ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 11:29 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercuryDima T Тогда надо сумму всех чисел 0 ... n сложить n+2 раз, т.е. формула Почему n+2 раза ? Потому что парные есть (11, 22 и т.д.) Если считать все комбинации, то в каждом разряде, каждое значение повторяется n+1 раз, т.е. все комбинации 2(n+1), т.к. нам надо только половину, то получаем (n+1), но так мы учли только половину из парных (1 из 11, 2 из 22 и т.д.) поэтому еще +1, т.e. итого (n+2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 11:40 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Dima TSashaMercuryпропущено... Почему n+2 раза ? Потому что парные есть (11, 22 и т.д.) Если считать все комбинации, то в каждом разряде, каждое значение повторяется n+1 раз, т.е. все комбинации 2(n+1), т.к. нам надо только половину, то получаем (n+1), но так мы учли только половину из парных (1 из 11, 2 из 22 и т.д.) поэтому еще +1, т.e. итого (n+2) Логика понятна. Остался такой вопрос: почему каждое значение должно встретиться ровно n+1 раз? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 11:51 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
SashaMercuryDima Tпропущено... Потому что парные есть (11, 22 и т.д.) Если считать все комбинации, то в каждом разряде, каждое значение повторяется n+1 раз, т.е. все комбинации 2(n+1), т.к. нам надо только половину, то получаем (n+1), но так мы учли только половину из парных (1 из 11, 2 из 22 и т.д.) поэтому еще +1, т.e. итого (n+2) Логика понятна. Остался такой вопрос: почему каждое значение должно встретиться ровно n+1 раз? Потому что (n+1)ричная система счисления. Сколько раз в десятичной встречается каждая цифра в диапазоне 0...99 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 11:53 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Довольно необычная точка зрения(и способ решения) на эту задачу, даже не думал в эту сторону когда решал её(тремя способами). Функция найдена верно:) Было бы интересно увидеть другие решения, и, код на С/С++ :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2016, 12:03 |
|
||
|
Пятничный BS и лебеди
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Выкладываю решение: 1. - достаточно было реализовать двойной цикл 2. Однако, небольшой анализ данного цикла и использование формулы суммы арифметической прогрессии приводит нас к следующему тождеству: . Собственно таким образом я эту задачу и решил первым делом. 3. Кроме того, данную формулу можно получить как , при к=2. Если кому-то интересно, попробуйте самостоятельно объяснить то, как она получается. Дмитрий предложил 4 вариант рассуждений, о котором я даже не думал. Что мне хотелось сказать относительно С++ и опять в контексте типизации. Только через несколько минут понял, почему мой код для аналогичной задачи не работает. При этом условная n была инициализирована и объявлена намного ранее чем вычисление результата. Код: plaintext 1. 2. 3. Этот пример вероятно является классической ошибкой, которой не было бы, если бы С++ был действительно сильно типизированным языком. Возможно этот язык силно типизирован, но только в сравнении с какими-то другими конкретными языками ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2016, 17:12 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39294701&tid=2018441]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 271ms |
| total: | 439ms |

| 0 / 0 |
