Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
[Вернуться к задаче]   1
  1  Шохрух Нарзуллаев, 14 июня 2025 г. 12:45:56
     кому полезно: либо один из ведро пусто, либо полно всегда, получается здесь всего 6 разных случай Обозначаем a - количество вода первого ведро, b - второго, с - третьего (1) a = 0 (2) a = B1 (3) b = 0 (4) b = B2 (5) c = 0 (6) c = B3 это дает максимум 6 * 1000 разных вершин в граф. (B1,B2,B3 <= 1000).
  2  Шохрух Нарзуллаев, 14 июня 2025 г. 5:38:45
     Если B2 + B3 <= B1, то здесь всего 4 состояний : (B1, 0, 0) , (B1-B2, B2, 0), (B1-B3, 0, B3), (B1-B2-B3, B2, B3) где первый это начальное состояние, следующий двух за один ход, последняя за два хода получиться.
  3  Караулов Иван Дмитриевич, 01 февраля 2024 г. 11:14:05
     можно и бфс, но дфс как по мне нагляднее в графе состояний, так как проще метить вершины, в бфс либо на очередях либо на дистанциях придется очень много данных хранить, а в бфс только словарь с состояниями, зашло за 0.92 дфсом, хотя он даже не оптимален
  4  МИРЖАХОН КАЙИМОВ МИРТЕМИРОВИЧ, 15 декабря 2022 г. 23:23:20
     use BFS if you have loop then print(impossible
  5  МИРЖАХОН КАЙИМОВ МИРТЕМИРОВИЧ, 15 декабря 2022 г. 23:22:26
     easy max 40%
  6  Матус Даниил Дмитриевич, 24 июля 2020 г. 20:16:41
     бля вот я пересрал пока тестировало ибо код был 2000+ и искать в нем баг себе дороже а так с первого трая суть в том что ты тупа в мап забиваешь по мере поступления комбинаций и идешь обычной шириной
  7  Севидов Артём Алексеевич, 06 мая 2020 г. 1:20:19
     BFS+хэши=AC
  8  Булдаев Баир Тимурович, 28 января 2017 г. 15:28:38
     Решается поиском в ширину, где вершины это состояние системы т.е. количество воды в каждом ведре,а ребра это переливания т.е. из 1 ведра во 2 из 2 в 3 и тд.
  9  Иван Михнович, 09 мая 2015 г. 8:06:53
     А я заметил что три числа до тысячи можно упаковать в один int. И сделал на этой основе самый обычный поиск в ширину с использованием std::queue<int> для очереди.
  10  Корольчук Артём Владимирович, 20 марта 2014 г. 23:25:44
     очевидная трехмерная очередь доходит до 29 теста, что не плохо для олимпиады какой-нибудь, но если подумать, то третий параметр совсем не нужен, так как у нас фиксированный объем воды, следовательно объем воды в третьем ведре вычисляется из двух предыдущих, вот, возможно кому-то поможет)
  11  Кудаков Вадим, 27 июня 2012 г. 16:34:14
     Я сделал обычный поиск в ширину на двухмерном массиве, просто вычислял третье ведро из двух уже имеющихся.
  12  Балакший Андрей Владимирович, 12 января 2012 г. 17:34:04
     у меня в bfs 6 состояний AB, AC, BA, BC, CA, CB;
переливал и сохранял в map'е результат хэша, простое число 1009
  13  Девятко Александр Игоревич, 23 декабря 2011 г. 19:50:56
     а есть ли какое-нибудь "арифметическое" решение?
  14  Огородников Юрий Юрьевич, 19 февраля 2009 г. 9:56:34
     А какой ответ для 10 8 7 5?
     IMPOSSIBLE
  15  Глащенко Никита Вячеславович, 10 октября 2008 г. 12:45:18
     Скажите,ээ... это ваще нормально,что я её поиском в ширину сдал, или есть более гуманный метод?
     Да вроде бы это вполне гуманный метод.
  16  Глащенко Никита Вячеславович, 10 октября 2008 г. 12:30:36
     надо,тоха,надо.но я это использую тока чтоб узнать,можно или нельзя.
  17  Даньшин Антон Анатольевич [LIOD], 10 октября 2008 г. 12:19:47
     Там НОД применять не надо?
  18  Глащенко Никита Вячеславович, 10 октября 2008 г. 10:49:25
     неясно,можно ли просто выливать воду из ведра? на землю
 1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru