Задачка про шарики

Всё класс, только с чего Вы взяли, что бракованный шар - тяжёлый? А вдруг он лёгкий? Тогда он в числе ABC . :pardon:

В этом случае алгоритм будет другой :slight_smile:

Опять же 1) шаг. сравниваем ABC и DEF (слева и справа соотв.) И вдруг так получилось, как Вы говорите, что шар A - легкий, тогда соответсвенно чаша DEF наклонится вниз, так? Хорошо.

2) шаг. Сраниваем DEF и GHI (слева и справа соотв.) и если весы равны, то в чаше ABC находится легкий бракованный шар.

  1. … “Далее как Доктор прописал…” :slight_smile:

Вы (да и мы тоже :slight_smile: ) не знаете, лёгкий или тяжёлый он, поэтому нужен “универсальный” алгоритм.
В алгоритме, описанном в этот раз, Вы предполагаете, что на первом шаге весы не в равновесии. А что если в равновесии? Опишите все возможные варианты развития событий при взвешивании по тройкам.

:pardon:

Я хочу услышать ответ Виталика. Для него писал.
Да, алгоритмов будет несколько, с удовольствием бы порешал, но у меня сейчас 3:12 ночи (утра), и мне как-то некогда… :pardon: Спать надо :blush:

:pardon:
Простите что вмешался, Вы бы хоть пометили – лично. :slight_smile:

Неааа. Не правильно. edik84 верно подметил, что не известно тяжелый шар или лёгкий. Поэтому нужно универсальное решение.

P.S. Откуда я это знаю? “Я программист будущий!”

не программистский подход какойто:) Нужно внимательно читать задание.

У нас по этому поводу был тост в универе интересный:
(вкратце):

Мужик поймал золотую рыбку и она предложила выполнить 1 желание в обмен на свободу.
Всё у него было в жизни в достатке, кроме одного, и он решил попросить:

  • Хочу чтобы у меня чл.н был до земли.

Рыбка подумала подумала. и укоротила чуваку ноги.

Так выпьем же за правильно поставленное ТЗ (тех задание).

1 лайк

Как говорят математики, правильно сформулировать вопрос - это уже наполовину найти решение.

А какой тогда подход?
Это Вы невнимательно прочитали мое решение:sensor:, это и есть программистский подход, подчеркиваю внимательно прочтите мое решение, не торопясь. Или покажите тому, кто задал это задание изначально (на 2-ом интервью, когда Виталика принимали на работу)
У меня и получилось универсальное решение…Вчитайтесь, задумайтесь.

:beee:P.S. Главное я смогу объяснить консулу (если будут вопросы по проффесии) :bayan:

Безусловно.
Может я не столь красноречив - не девочка. :sensor:
Я же написал - попробую вам объяснить, что вышло - вы меня не до-поняли. Никто не говорит, что я уверен и в 1/2/3/4 (нужное подчеркнуть) чаше будет брак (дайте мне 13 шариков (из них, 1-пустотелый, другой цельнометаллический с вкраплениями чугуна и я вам все наглядно покажу) - но такой возможности нет. Жалко.

Здесь практика нужна…
Извините, если что не так :pardon:

DIGGITY - мое сообщение “Как говорят математики, правильно сформулировать вопрос - это уже наполовину найти решение.” относилось не к вашему решению задачи, а к цитате VinT-а "Так выпьем же за правильно поставленное ТЗ (тех задание). "

Что касается вашего алгоритма - он не охватывает все возможные варианты, могущие возникнуть при решении задачи. Например, вы допускаете, что при первом взвешивании шары A B C уравновесят шары D E F. Вполне возможный вариант, говорящий о том, что эти шесть шаров эталонные. НО! - а если при первом взвешивании этих шести шаров одна из чаш перевесит - что тогда делать дальше?

Далее - при втором взвешивании шары G H I перевесили эталонные щары A B C, что насомненно свидетельствует о том, что среди шаров G H I один бракованный и он тяжелее эталонных. А если шары G H I уравновесят шары A B C? Тогда это будет означать, что и шары G H I эталонные, и бракованный шар находится среди шаров J K L и за оставшееся третье взвешивание навозможно однозначно определить, какой он - легкий или тяжелый.

Просто вы нашли решение, которое будет работать при определенных обстоятельствах. А универсальный алгоритм должен охватывать все возможные варианты.

Не обижайтесь, но этот так сказать делетантский подход.
Я считаю, что нужно ВНИМАТЕЛЬНО прочитать задание. Попытаться найти решение-> Решили!? -> Проверить решение на ошибки при всех возможных ситуациях -> не нашли ошибки!? -> дайте другим проверить, может они найдут (типа бета тестирование) -> нет ошибок -> УРА!

У вас же всё наоборот. Прочитали невнимательно задание-> Решили.(думая, что правильно)-> Показали людям-> Вам сразу указали, что решение не правильное. -> Вы спорите и утверждаете, что решили правильно и универсально -> Тупик (для вас). Почему?
Да потому! Представьте себе, что вы устроились работать программистом. Дали вам задание. Вы его прочитали “между строк”. Решили кое как. Проверили. Вроде работает. Тестеры проверили (хуже, если тестеров нет и ваша прога попадёт сразу к заказчику). Они нашли ошибки. Показывают их вам. А вы им на это отвечаете:

Это Вы невнимательно прочитали мое решение:sensor:, это и есть программистский подход, подчеркиваю внимательно прочтите мое решение, не торопясь. У меня и получилось универсальное решение…Вчитайтесь, задумайтесь.

И считайте работы у вас больше нет…

Или покажите тому, кто задал это задание изначально (на 2-ом интервью, когда Виталика принимали на работу)

Я и есть Виталик:) И я бы побоялся это решение показывать как правильное, тк в нём элементарно находяться ошибки!

P.S. Главное я смогу объяснить консулу (если будут вопросы по проффесии) :bayan:

Советую не спорить с консулом и не переубеждать его ни в чём. Иначе он вас переубедит, что вам не нужна виза:)

Не совсем. Вспомните первое взвешиваниие. допустим (1 2 3 4)<(5 6 7 8), значит (для вашего случая) либо 4 -легче, либо 5-тяжелее. и дальше по шагам решения Khartsyz.

Спасибо за “добрые” слова. Не ожидал.
Я не тестер - да. Под вопросом стану ли я вообще им.
Я Вам не ровня - это понятно? Я тоже дам Вам совет - помните всегда, что наряду с Вашим мнением, одинаково стоит и мнение другого человека.

-> Тупик (для вас)

Это Вы сейчас мне? Вот так сразу, значит, перешли на личности? Да?
По-Вашему я - тупик? Вы - заблуждаетесь, Вы даже не знаете кто я и сразу категорично ТУПИК (для вас) - я взял на свой счет. А Вы уверены?

Не обижайтесь

Обиделся и очень сильно. Скажете “На обиженных воду возят”. А сможете?

Прочитали невнимательно задание

Повторюсь - Вы уверены?


Угодить кому-то… (это я комментировать не буду).

Ну так и я о том же. Только ситуация, когда мы знаем, что либо 4 - легче, либо 5 - тяжелее, определяется после второго взвешивания. И за третье взвешивание надо найти, какой из шаров бракованный - 4 или 5 и какое у него отличие по весу с эталонным шаром. Я и написал, что эта задача решается, только если на третье взвешивание попадется бракованный шар, ведь один из оставшихся шаров 4 и 5 эталонный, а другой бракованный. А если для третьего взвешивания берется эталонный шар, то мы только будем знать, что оставшийся последний шар бракованный, но неизвестно легче он или тяжелее.

После второго взвешивания мы знаем наверняка, что например 4-й тяжелее. Ложим на весы его с эталонным. Если весы равны, значит бракованный 5-й и он легче. Если весы не равны, значит бракованный 4-й и он тяжелее.

Спасибо. Тестирование завершено.:flo:

Я не спорю, что есть мнение другого человека и с ним нуно считаться.
А если не согласен, то можно и оспорить. На то он и публичный форум.
Я просто указал вам на ваши ошибки в решении, тк Вы это упорно оспаривали.

Я не тестер - да. Под вопросом стану ли я вообще им.
Я Вам не ровня - это понятно?

Я ни с собой и ни с кем другим Вас не сравнивал. Поэтому прошу Вас этого тоже не делать.

Это Вы сейчас мне? Вот так сразу, значит, перешли на личности? Да?
По-Вашему я - тупик? Вы - заблуждаетесь, Вы даже не знаете кто я и сразу категорично ТУПИК (для вас) - я взял на свой счет. А Вы уверены?

Почему на личности? Я имел ввиду, что при вашем подходе вы заходите в Тупик. Тупик - это не определение человеку. Тупик - это то, куда можно попасть(зайти) при выборе неверного пути.

Обиделся и очень сильно. Скажете “На обиженных воду возят”. А сможете?

И не собираюсь. Это мне решать, что говорить а что нет.

Прочитали невнимательно задание

Повторюсь - Вы уверены?

Да. Вам 3 человека пытались объяснить, что ваше решение не охватывает все варианты и возникает ситуация, когда не возможно определить тяжелый шар или лёгкий, НО тем неменее вы стояли на своём:

Это Вы невнимательно прочитали мое решение, это и есть программистский подход, подчеркиваю внимательно прочтите мое решение, не торопясь. У меня и получилось универсальное решение…Вчитайтесь, задумайтесь.

Пока в соседнюю палату не перенесли)

Действительно со второй задачкой интересно…

спаибо всем за решение

Так, что, решили вторую, или нет ? Непонятно?
Давайте тогда напишем а то как то тема незаконченная…

(Я то решил…):blush: