Я имею ввиду, что начиная, например, справа сверху как мы узнаем, есть в центре мина или нет? Мы не можем вычислить это никак - нет просвета и информация из чисел вокруг не помогает тут
А всё решается просто, вместо случайной расстановки мин делать связную область без мин и генерацию начинать с первого клика игрока(иначе он может подорваться с первого же хода) - именно так сделан сапёр в винде
А вот как - тут и стоит подумать, в том и интерес)
Если мины образуют кольцо вокруг ячейки без мины, скажем слева (мина это X, а 5 ячейка без неё) то разгадывая поле справа туда никак не попадёшь: XX 5X XX
а это было бы интересно разобрать - как узнать что область не замкнута и в неё есть доступ? Когда это лучше делать, при постановке новой мины проверять не замкнёт ли она область, или пытаться сперва расставить а потом проверить и, допустим, перенести одну из них, чтобы разомкнуть контур. А ведь это коснётся и задачи и на поиск пути - такие алгоритмы используются во множестве игр. Понимаю, что статья для начинающих - но чуть-чуть материала на развитие тоже будет интересно
Автор, ждал разбора момента и не увидел как генератор минного поля учитывает, что мины могут создать кольцо, в которое невозможно будет попасть? Простая рандомная расстановка может привести к такому
Я имею ввиду, что начиная, например, справа сверху как мы узнаем, есть в центре мина или нет? Мы не можем вычислить это никак - нет просвета и информация из чисел вокруг не помогает тут
А всё решается просто, вместо случайной расстановки мин делать связную область без мин и генерацию начинать с первого клика игрока(иначе он может подорваться с первого же хода) - именно так сделан сапёр в винде
А вот как - тут и стоит подумать, в том и интерес)
Если мины образуют кольцо вокруг ячейки без мины, скажем слева (мина это X, а 5 ячейка без неё) то разгадывая поле справа туда никак не попадёшь:
XX
5X
XX
а это было бы интересно разобрать - как узнать что область не замкнута и в неё есть доступ? Когда это лучше делать, при постановке новой мины проверять не замкнёт ли она область, или пытаться сперва расставить а потом проверить и, допустим, перенести одну из них, чтобы разомкнуть контур. А ведь это коснётся и задачи и на поиск пути - такие алгоритмы используются во множестве игр.
Понимаю, что статья для начинающих - но чуть-чуть материала на развитие тоже будет интересно
Автор, ждал разбора момента и не увидел как генератор минного поля учитывает, что мины могут создать кольцо, в которое невозможно будет попасть? Простая рандомная расстановка может привести к такому