Секрети гри у морський бій на телефоні. Як виграти у грі морський бій

Ви граєте в морський бій, але не завжди виграєте? Тоді вам, напевно, цікаво дізнатися, як суттєво підвищити свої шанси на виграш, як правильно розставити кораблі, як швидко знищити кораблі супротивника і, звичайно ж, як виграти у грі Морський бій!

Правила гри "Морський Бій"

Існує безліч варіантів морського бою, але ми з вами розглянемо найпоширеніший варіант з наступним набором кораблів:

Всі перелічені кораблі повинні бути розміщені на квадратному полі 10 на 10 клітин, при цьому кораблі не можуть торкатися ні кутами, ні сторонами. Саме ігрове поле нумерується згори донизу, а вертикалі позначаються російськими літерами від "А" до "К" (при цьому літери "Й" і "Й" пропускають).

Поруч малюється вороже поле аналогічного розміру. При вдалому пострілі по кораблю противника на відповідній клітці ворожого поля ставиться хрестик і повторний постріл, при невдалому пострілі у відповідній клітці ставиться точка, і хід переходить до противника. Оптимальна стратегія

Як виграти у грі Морський Бій

У грі морський бій завжди є елементом випадковості, але його можна звести до мінімуму. Перш ніж переходити безпосередньо до пошуку оптимальної стратегіїнеобхідно озвучити одну очевидну річ: ймовірність потрапити по кораблю противника тим вище, чим менше неперевірених клітин залишилося на його полі, аналогічно ймовірність попадання по ваших кораблях тим нижче, чим більше неперевірених клітин залишилося на вашому полі. Таким чином, для ефективної гри потрібно навчитися відразу двом речам: оптимальній стрільбі по противнику та оптимальному розміщенню кораблів.

У подальшому поясненні будуть використовуватися такі позначення:

Як стріляти по кораблях супротивника

Першим і найочевиднішим правилом оптимальної стрілянини є наступне правило: не стріляти по клітинах, що безпосередньо оточують знищений корабель противника.

Відповідно до прийнятих вище позначень, на малюнку жовтим відзначені ті клітини, за якими вже були зроблені безуспішні постріли, червоним відмічені клітини, постріли по яких закінчилися попаданням, а зеленим відзначені клітини, стрільба по яких не проводилася, але можна гарантовано стверджувати, що кораблів у них немає (кораблів там бути не може, тому що за правилами гри кораблі не можуть стикатися).

З першого правила відразу випливає друге: якщо вам вдалося підбити ворожий корабель, необхідно відразу ж його добити, щоб якнайшвидше отримати список гарантовано вільних клітин.

Третє правило випливає з перших двох: необхідно насамперед намагатися підбити найбільші кораблі супротивника. Можливо, для вас це правило не очевидне, але якщо трохи подумати, то можна легко помітити, що знищивши ворожий лінкор, ми в кращому разі отримаємо інформацію відразу про 14 гарантовано вільних клітин, а знищивши крейсер, всього про 12.

Оптимальна стратегія стрілянини

Т.о. оптимальну стратегію стрілянини можна звести до цілеспрямованого пошуку та знищення найбільших кораблів противника. На жаль, сформулювати стратегію мало, необхідно запропонувати спосіб її реалізації.

Для початку розглянемо ділянку ігрового поля розміром 4 на 4 клітини. Якщо в ділянці, що розглядається, є ворожий лінкор, то його гарантовано можна підбити не більше ніж за 4 постріли. Для цього треба стріляти так, щоб на кожній горизонталі та вертикалі було рівно по одній перевіреній клітині. Нижче представлені всі варіанти такої стрільби (без урахування відображень і поворотів).

Серед усіх цих варіантів оптимальними на полі 10 на 10 клітин є тільки перші два варіанти, що гарантують попадання в лінкор максимум за 24 постріли.

Після того, як знищено ворожий лінкор, необхідно розпочинати пошук крейсерів, а потім і есмінців. При цьому, як ви вже здогадалися, можна скористатися аналогічною методикою. Тільки тепер необхідно розбивати поле на квадрати зі стороною у 3 та 2 клітини відповідно.

Якщо при пошуку лінкора ви використовували другу стратегію, то для пошуку крейсерів та есмінців вам необхідно стріляти по наступних полях (зеленим відмічені поля, по яких ви вже стріляли під час пошуку лінкора):

Для пошуку катерів оптимальної стратегії немає, тому наприкінці гри доводиться спиратися переважно на успіх.

Послідовність найкращих ходів для початку гри

Якщо звернутися до математичної теорії, можна побудувати карту ймовірності розміщення кораблів:

Виходячи з цієї карти, послідовність «найкращих ходів»при постійних промахах виглядає так (див. рисунок):

C1, J8, A8, H1, A4, J4, D10, G10, E1, D2, B3, A2, C9, B10, H9, I10, I7, J6, I5, H6, J2, I3, H4, G5, G2, F3, E4, B7, A6, B5, C6, C3, D4, D5, F6.

Як розставити кораблі

Оптимальна стратегія розміщення кораблів у певному сенсі обернена до оптимальної стратегії стрільби. При стрільбі ми намагалися знайти найбільші кораблі, щоб скоротити кількість клітин, які потрібно перевіряти, за рахунок гарантовано вільних клітин. Значить, при розміщенні кораблі треба ставити таким чином, щоб у разі втрати мінімізувати кількість гарантовано вільних клітин. Як ви пам'ятаєте, лінкор у центрі поля відкриває для супротивника відразу 14 полів, але лінкор, що стоїть у кутку, відкриває для супротивника всього 6 полів:

Аналогічно, крейсер, що стоїть у кутку, замість 12 полів відкриває всього 6. В.о., розмістивши великі кораблі вздовж кордону поля, ви залишаєте більший простір для катерів. Т.к. стратегії для пошуку катерів немає, противнику доведеться стріляти навмання, і чим більше вільних полів у вас залишиться на момент лову катерів, тим важче буде виграти противнику.

26 травня 2013 о 20:27

Оптимальний алгоритмігри у морський бій

  • Алгоритми

Кілька днів тому я з подивом дізнався, що деякі мої знайомі не вміють грати у морський бій. Тобто. правила вони, звичайно, знають, але грають якось безсистемно і в результаті часто програють. У цьому записі я намагатимуся викласти основні ідеї, які допоможуть підвищити рівень вашої гри.

Правила гри

Існує безліч варіантів морського бою, але ми з вами розглянемо найпоширеніший варіант з наступним набором кораблів:

Всі перелічені кораблі повинні бути розміщені на квадратному полі 10 на 10 клітин, при цьому кораблі не можуть торкатися ні кутами, ні сторонами. Саме ігрове поле нумерується згори донизу, а вертикалі позначаються російськими літерами від "А" до "К" (при цьому літери "Й" і "Й" пропускають).

Поруч малюється вороже поле аналогічного розміру. При вдалому пострілі по кораблю противника на відповідній клітці ворожого поля ставиться хрестик і повторний постріл, при невдалому пострілі у відповідній клітці ставиться точка, і хід переходить до противника.

Оптимальна стратегія

У грі морський бій завжди є елементом випадковості, але його можна звести до мінімуму. Перш ніж переходити безпосередньо до пошуку оптимальної стратегії, необхідно озвучити одну очевидну річ: ймовірність потрапити по кораблю противника тим вище, чим менше неперевірених клітин залишилося на його полі, аналогічно ймовірність попадання по вашим кораблям тим нижче, чим більше неперевірених клітин залишилося на вашому полі. Т.о. Для ефективної гри потрібно навчитися відразу двом речам: оптимальній стрільбі по противнику та оптимальному розміщенню кораблів.

У подальшому поясненні будуть використовуватися такі позначення:

Оптимальна стрілянина
Першим і найочевиднішим правилом оптимальної стрільби є таке правило: не стріляти по клітинах, що безпосередньо оточують знищений корабель противника.

Відповідно до прийнятих вище позначень, на малюнку жовтим відзначені ті клітини, за якими вже були зроблені безуспішні постріли, червоним відмічені клітини, постріли по яких закінчилися попаданням, а зеленим відзначені клітини, стрільба по яких не проводилася, але можна гарантовано стверджувати, що кораблів у них немає (кораблів там бути не може, тому що за правилами гри кораблі не можуть стикатися).

З першого правила відразу випливає друге: якщо вам вдалося підбити ворожий корабель, необхідно відразу ж його добити, щоб якнайшвидше отримати список гарантовано вільних клітин.

Третє правило випливає з перших двох: необхідно насамперед намагатися підбити найбільші кораблі супротивника. Можливо, для вас це правило не очевидне, але якщо трохи подумати, то можна легко помітити, що знищивши ворожий лінкор, ми в кращому разі отримаємо інформацію відразу про 14 гарантовано вільних клітин, а знищивши крейсер, всього про 12.

Т.о. оптимальну стратегію стрілянини можна звести до цілеспрямованого пошуку та знищення найбільших кораблів противника. На жаль, сформулювати стратегію мало, необхідно запропонувати спосіб її реалізації.

Для початку розглянемо ділянку ігрового поля розміром 4 на 4 клітини. Якщо в ділянці, що розглядається, є ворожий лінкор, то його гарантовано можна підбити не більше ніж за 4 постріли. Для цього треба стріляти так, щоб на кожній горизонталі та вертикалі було рівно по одній перевіреній клітині. Нижче представлені всі варіанти такої стрільби (без урахування відображень і поворотів).

Серед усіх цих варіантів оптимальними на полі 10 на 10 клітин є тільки перші два варіанти, що гарантують попадання в лінкор максимум за 24 постріли.

Після того, як знищено ворожий лінкор, необхідно розпочинати пошук крейсерів, а потім і есмінців. При цьому, як ви вже здогадалися, можна скористатися аналогічною методикою. Тільки тепер необхідно розбивати поле на квадрати зі стороною у 3 та 2 клітини відповідно.

Якщо при пошуку лінкора ви використовували другу стратегію, то для пошуку крейсерів та есмінців вам необхідно стріляти по наступних полях (зеленим відмічені поля, по яких ви вже стріляли під час пошуку лінкора):

Для пошуку катерів оптимальної стратегії немає, тому наприкінці гри доводиться спиратися переважно на успіх.

Оптимальне розміщення кораблів
Оптимальна стратегія розміщення кораблів у певному сенсі обернена до оптимальної стратегії стрільби. При стрільбі ми намагалися знайти найбільші кораблі, щоб скоротити кількість клітин, які потрібно перевіряти, за рахунок гарантовано вільних клітин. Значить, при розміщенні кораблі треба ставити таким чином, щоб у разі втрати мінімізувати кількість гарантовано вільних клітин. Як ви пам'ятаєте, лінкор у центрі поля відкриває для супротивника відразу 14 полів, але лінкор, що стоїть у кутку, відкриває для супротивника всього 6 полів:

Аналогічно, крейсер, що стоїть у кутку, замість 12 полів відкриває всього 6. В.о., розмістивши великі кораблі вздовж кордону поля, ви залишаєте більший простір для катерів. Т.к. стратегії для пошуку катерів немає, противнику доведеться стріляти навмання, і чим більше вільних полів у вас залишиться на момент лову катерів, тим важче буде виграти противнику.

Нижче представлено три способи розміщення великих кораблів, які залишають великий простір для катерів (позначено синім):

Кожна з наведених розстановок залишає для катерів рівно 60 вільних клітин, а це означає, що можливість випадково потрапити в катер становить 0,066. Для порівняння варто навести випадкове розміщення кораблів:

При такій розстановці для катерів залишається всього 21 клітина, а це означає, що ймовірність попадання на катер становить вже 0,19, тобто. майже втричі вище.

На закінчення хочу сказати, що не варто проводити занадто багато часу, граючи в морський бій. Особливо хочу застерегти вас від гри на лекціях. Коли я сидів у Вабі-Сабі і грав у морський бій зі своєю дівчиною, повз неї пройшла офіціантка і сказала, що вона дуже непогано грає, т.к. багато практикувалася на парах. Хто знає, ким би вона працювала, якби свого часу слухала лекції?

P.S. У коментарях абсолютно правильно вказують, що на хабрі вже були схожі публікації, було б неправильно не поставити посилання на них.

Кілька днів тому я з подивом дізнався, що деякі мої знайомі не вміють грати у морський бій. Тобто. правила вони, звичайно, знають, але грають якось безсистемно і в результаті часто програють. У цьому записі я намагатимуся викласти основні ідеї, які допоможуть підвищити рівень вашої гри.

Правила гри

Існує безліч варіантів морського бою, але ми з вами розглянемо найпоширеніший варіант з наступним набором кораблів:

Всі перелічені кораблі повинні бути розміщені на квадратному полі 10 на 10 клітин, при цьому кораблі не можуть торкатися ні кутами, ні сторонами. Саме ігрове поле нумерується згори донизу, а вертикалі позначаються російськими літерами від "А" до "К" (при цьому літери "Й" і "Й" пропускають).

Поруч малюється вороже поле аналогічного розміру. При вдалому пострілі по кораблю противника на відповідній клітці ворожого поля ставиться хрестик і повторний постріл, при невдалому пострілі у відповідній клітці ставиться точка, і хід переходить до противника.

Оптимальна стратегія

У грі морський бій завжди є елементом випадковості, але його можна звести до мінімуму. Перш ніж переходити безпосередньо до пошуку оптимальної стратегії, необхідно озвучити одну очевидну річ: ймовірність потрапити по кораблю противника тим вище, чим менше неперевірених клітин залишилося на його полі, аналогічно ймовірність попадання по вашим кораблям тим нижче, чим більше неперевірених клітин залишилося на вашому полі. Т.о. Для ефективної гри потрібно навчитися відразу двом речам: оптимальній стрільбі по противнику та оптимальному розміщенню кораблів.

У подальшому поясненні будуть використовуватися такі позначення:

Оптимальна стрілянина
Першим і найочевиднішим правилом оптимальної стрільби є таке правило: не стріляти по клітинах, що безпосередньо оточують знищений корабель противника.

Відповідно до прийнятих вище позначень, на малюнку жовтим відзначені ті клітини, за якими вже були зроблені безуспішні постріли, червоним відмічені клітини, постріли по яких закінчилися попаданням, а зеленим відзначені клітини, стрільба по яких не проводилася, але можна гарантовано стверджувати, що кораблів у них немає (кораблів там бути не може, тому що за правилами гри кораблі не можуть стикатися).

З першого правила відразу випливає друге: якщо вам вдалося підбити ворожий корабель, необхідно відразу ж його добити, щоб якнайшвидше отримати список гарантовано вільних клітин.

Третє правило випливає з перших двох: необхідно насамперед намагатися підбити найбільші кораблі супротивника. Можливо, для вас це правило не очевидне, але якщо трохи подумати, то можна легко помітити, що знищивши ворожий лінкор, ми в кращому разі отримаємо інформацію відразу про 14 гарантовано вільних клітин, а знищивши крейсер, всього про 12.

Т.о. оптимальну стратегію стрілянини можна звести до цілеспрямованого пошуку та знищення найбільших кораблів противника. На жаль, сформулювати стратегію мало, необхідно запропонувати спосіб її реалізації.

Для початку розглянемо ділянку ігрового поля розміром 4 на 4 клітини. Якщо в ділянці, що розглядається, є ворожий лінкор, то його гарантовано можна підбити не більше ніж за 4 постріли. Для цього треба стріляти так, щоб на кожній горизонталі та вертикалі було рівно по одній перевіреній клітині. Нижче представлені всі варіанти такої стрільби (без урахування відображень і поворотів).

Серед усіх цих варіантів оптимальними на полі 10 на 10 клітин є тільки перші два варіанти, що гарантують попадання в лінкор максимум за 24 постріли.

Після того, як знищено ворожий лінкор, необхідно розпочинати пошук крейсерів, а потім і есмінців. При цьому, як ви вже здогадалися, можна скористатися аналогічною методикою. Тільки тепер необхідно розбивати поле на квадрати зі стороною у 3 та 2 клітини відповідно.

Якщо при пошуку лінкора ви використовували другу стратегію, то для пошуку крейсерів та есмінців вам необхідно стріляти по наступних полях (зеленим відмічені поля, по яких ви вже стріляли під час пошуку лінкора):

Для пошуку катерів оптимальної стратегії немає, тому наприкінці гри доводиться спиратися переважно на успіх.

Оптимальне розміщення кораблів
Оптимальна стратегія розміщення кораблів у певному сенсі обернена до оптимальної стратегії стрільби. При стрільбі ми намагалися знайти найбільші кораблі, щоб скоротити кількість клітин, які потрібно перевіряти, за рахунок гарантовано вільних клітин. Значить, при розміщенні кораблі треба ставити таким чином, щоб у разі втрати мінімізувати кількість гарантовано вільних клітин. Як ви пам'ятаєте, лінкор у центрі поля відкриває для супротивника відразу 14 полів, але лінкор, що стоїть у кутку, відкриває для супротивника всього 6 полів:

Аналогічно, крейсер, що стоїть у кутку, замість 12 полів відкриває всього 6. В.о., розмістивши великі кораблі вздовж кордону поля, ви залишаєте більший простір для катерів. Т.к. стратегії для пошуку катерів немає, противнику доведеться стріляти навмання, і чим більше вільних полів у вас залишиться на момент лову катерів, тим важче буде виграти противнику.

Нижче представлено три способи розміщення великих кораблів, які залишають великий простір для катерів (позначено синім):

Кожна з наведених розстановок залишає для катерів рівно 60 вільних клітин, а це означає, що можливість випадково потрапити в катер становить 0,066. Для порівняння варто навести випадкове розміщення кораблів:

При такій розстановці для катерів залишається всього 21 клітина, а це означає, що ймовірність попадання на катер становить вже 0,19, тобто. майже втричі вище.

На закінчення хочу сказати, що не варто проводити занадто багато часу, граючи в морський бій. Особливо хочу застерегти вас від гри на лекціях. Коли я сидів у Вабі-Сабі і грав у морський бій зі своєю дівчиною, повз неї пройшла офіціантка і сказала, що вона дуже непогано грає, т.к. багато практикувалася на парах. Хто знає, ким би вона працювала, якби свого часу слухала лекції?

P.S. У коментарях абсолютно правильно вказують, що на хабрі вже були схожі публікації, було б неправильно не поставити посилання на них.

Проста та захоплююча гра, яку знають із самого дитинства – морський бій. Правила гри не дуже складні, запам'ятати їх може будь-хто. Морська баталія подобається дорослим та дітям, грати в неї можна в будь-якому місці.

Правила гри Морський бій

Суть розваги полягає в тому, що два гравці по черзі називають певні координати на карті суперника, яка їм невідома. Названа точка має потрапити у корабель або його частину. Завдання кожного гравця: раніше потопити всі судна супротивника. Варіантів такої гри на сьогоднішній день кілька:

  1. На папері. Цей метод вважається традиційним варіантом розваги. Він дозволяє грати у будь-якому місці. Підійде для баталії зошит у клітинку або один лист (навіть не розлинений).
  2. Настільна. Перший варіант такої розваги з'явився понад 80 років тому. Настільна граморський бій вирізнявся об'ємністю, барвистістю. Через деякий час з'явилося багато варіацій з різною чисельністю кораблів, іншими розмірами полів.
  3. На комп'ютері. Сучасні гаджетилегко можна перетворити на поле бою кораблів, завантаживши та встановивши потрібну програму. Є варіанти гри у мережі. Особливості: вибрані точки фіксуються автоматично, є озвучка, яка додає реальності, що відбувається.

Поле

Щоб зрозуміти, як грати у морський бій, треба розібратися з основними поняттями. Почати потрібно із малювання свого ігрового поля. Воно є координатну площину, Квадрат 10 на 10. Кожна його сторона свої визначення: горизонтальну нумерують зверху вниз, вертикальну - літерними позначеннями. Використовуються літери російського алфавіту від "А" до "К" або від "А до "І", якщо "Й" і "Й" пропускаються. Нерідко замість літерних позначеньвикористовуються слова "Снігуронька" або "Республіка". Вони складаються із десяти літер, що відповідає 10 квадратам на ігровому полі.

Поряд зі «своїм» полем треба накреслити «чуже», яке має такі самі розміри та координати. Це ділянка для флотилії супротивника. Поле порожнє, використовується для позначення своїх ходів та «ударів» суперника. З огляду на те, що є кілька варіантів системи координат, рекомендується заздалегідь домовитися, яка їх використовуватиметься. Далі потрібно розставити кораблі.

Кількість та розстановка кораблів

Існує певна схема розташування кораблів на ігровому полі. Судно складається з кількох палуб або труб (звідси назва, наприклад, "двопалубний" або "двотрубний"). На ігровому полі розташовуються:

  • 1 чотирипалубний, корабель, лінкор, – ряд із чотирьох клітин,
  • 2 трипалубні, крейсери, - ряди з 3 клітин;
  • 3 двопалубні, есмінці, - ряди з 2 клітин;
  • 4 однопалубні кораблі, торпедні катери, – 1 клітка.

У класичній грімалювати кораблі на ігровому полі необхідно згідно з правилами. Наприклад, усі судна сторонами чи кутами що неспроможні торкатися одне одного. Зустрічаються варіанти гри, коли кораблі розміщуються літерою «Г», квадратами чи зигзагами, не забороняється торкатися кутами. Також є баталії з іншою кількістю суден або їхньою будовою, наприклад, п'ятипалубний (авіаносець), кілька чотирипалубних. При використанні більшої кількостікораблів застосовується інша форма поля, розміром 15 на 15. Визначитись із вибором гри необхідно заздалегідь.

Хід гри

Грати в морський бій на папері необхідно відповідно до певними правилами. Інструкція визначає умови та черговість ходів:

  1. Спочатку вибирається хто ходитиме з першим. Для цього гравці кидають жереб.
  2. При здійсненні "пострілу", гравець називає координати, наприклад, В3.
  3. Якщо в клітці нічого немає, противник каже «мимо». За названими координатами розташований корабель, то «поранений» – якщо до нього потрапили, «убитий» – коли знищено повністю.
  4. Хрестиком позначається влучення у корабель противника. За такого вдалого пострілу, згідно з правилами, гравець ходить вдруге. Право ходу передається другому гравцю, якщо удар припав по порожньому полю.
  5. Перемагає той, хто перший потопить усі кораблі свого суперника.
  6. Після закінчення гри супротивники можуть вимагати один одного гральні поля для перевірки. Той, хто програв, буде вважатися тим, у кого поля невірно заповнені. Перемога дістається тому, хто вів чесну боротьбу.

Є певні обмеження у грі. Гра може бути закінчена раніше, якщо має місце недотримання правил. Грубими порушеннями вважаються:

  1. Неправильно накреслене поле – кількість судів перевищує необхідне, неправильні розміри сторін чи система координат.
  2. Один із гравців підглянув розташування суден у іншого.
  3. Перепустка ходу по неуважності.

Стратегія виграшу

Нескладна баталія не будується виключно на везінні. Для досягнення перемоги існує стратегія та тактика гри у морський бій. Вона полягає в наступному:

  1. Лист із розкресленим полем необхідно тримати так, щоб противник не міг подивитися.
  2. Для зручності та звітності рекомендується відзначати точками постріли ворога.
  3. Найуразливіші кораблі – це лінкор та торпедний катер. Перший дуже великий, тому його легко виявити. Торпедні катери мають маленькі розміри, їх важко знайти на полі, але вони топляться з одного удару.
  4. Новачки часто ціляться по кутах ігрового квадрата, тому малювати там їх не рекомендується.
  5. Досвідчені гравці радять одразу придумати схему розташування кораблів на полі. Хороших результатів можна досягти, якщо розставити одиниці флотилії за схемою. Наприклад, зібравши крейсера та лінкори в одному місці, а катери та есмінці розташувати в хаотичному порядку.
  6. Прийоми стрільби флотилією можуть бути різними. Щоб швидше винищити лінкор, пошуки рекомендується почати по діагоналі. Стріляти по квадратах потрібно на 4, через 3 клітки. Далі рухатися потрібно за спаданням: розшукувати трипалубні, двопалубні та одиначки-катери.

Відео

Кілька днів тому я з подивом дізнався, що деякі мої знайомі не вміють грати у морський бій. Тобто. правила вони, звичайно, знають, але грають якось безсистемно і в результаті часто програють. У цьому записі я намагатимуся викласти основні ідеї, які допоможуть підвищити рівень вашої гри.

Правила гри

Існує безліч варіантів морського бою, але ми з вами розглянемо найпоширеніший варіант з наступним набором кораблів:

Всі перелічені кораблі повинні бути розміщені на квадратному полі 10 на 10 клітин, при цьому кораблі не можуть торкатися ні кутами, ні сторонами. Саме ігрове поле нумерується згори донизу, а вертикалі позначаються російськими літерами від "А" до "К" (при цьому літери "Й" і "Й" пропускають).
Поруч малюється вороже поле аналогічного розміру. При вдалому пострілі по кораблю противника на відповідній клітці ворожого поля ставиться хрестик і повторний постріл, при невдалому пострілі у відповідній клітці ставиться точка, і хід переходить до противника.

Оптимальна стратегія

У грі морський бій завжди є елементом випадковості, але його можна звести до мінімуму. Перш ніж переходити безпосередньо до пошуку оптимальної стратегії, необхідно озвучити одну очевидну річ: ймовірність потрапити по кораблю противника тим вище, чим менше неперевірених клітин залишилося на його полі, аналогічно ймовірність попадання по вашим кораблям тим нижче, чим більше неперевірених клітин залишилося на вашому полі. Т.о. Для ефективної гри потрібно навчитися відразу двом речам: оптимальній стрільбі по противнику та оптимальному розміщенню кораблів.
У подальшому поясненні будуть використовуватися такі позначення:

Оптимальна стрілянина

Першим і найочевиднішим правилом оптимальної стрільби є таке правило: не стріляти по клітинах, що безпосередньо оточують знищений корабель противника.

Відповідно до прийнятих вище позначень, на малюнку жовтим відзначені ті клітини, за якими вже були зроблені безуспішні постріли, червоним відмічені клітини, постріли по яких закінчилися попаданням, а зеленим відзначені клітини, стрільба по яких не проводилася, але можна гарантовано стверджувати, що кораблів у них немає (кораблів там бути не може, тому що за правилами гри кораблі не можуть стикатися).
З першого правила відразу випливає друге: якщо вам вдалося підбити ворожий корабель, необхідно відразу ж його добити, щоб якнайшвидше отримати список гарантовано вільних клітин.
Третє правило випливає з перших двох: необхідно насамперед намагатися підбити найбільші кораблі супротивника. Можливо, для вас це правило не очевидне, але якщо трохи подумати, то можна легко помітити, що знищивши ворожий лінкор, ми в кращому разі отримаємо інформацію відразу про 14 гарантовано вільних клітин, а знищивши крейсер, всього про 12.

Т.о. оптимальну стратегію стрілянини можна звести до цілеспрямованого пошуку та знищення найбільших кораблів противника. На жаль, сформулювати стратегію мало, необхідно запропонувати спосіб її реалізації.
Для початку розглянемо ділянку ігрового поля розміром 4 на 4 клітини. Якщо в ділянці, що розглядається, є ворожий лінкор, то його гарантовано можна підбити не більше ніж за 4 постріли. Для цього треба стріляти так, щоб на кожній горизонталі та вертикалі було рівно по одній перевіреній клітині. Нижче представлені всі варіанти такої стрільби (без урахування відображень і поворотів).

Серед усіх цих варіантів оптимальними на полі 10 на 10 клітин є тільки перші два варіанти, що гарантують попадання в лінкор максимум за 24 постріли.

Після того, як знищено ворожий лінкор, необхідно розпочинати пошук крейсерів, а потім і есмінців. При цьому, як ви вже здогадалися, можна скористатися аналогічною методикою. Тільки тепер необхідно розбивати поле на квадрати зі стороною у 3 та 2 клітини відповідно.

Якщо при пошуку лінкора ви використовували другу стратегію, то для пошуку крейсерів та есмінців вам необхідно стріляти по наступних полях (зеленим відмічені поля, по яких ви вже стріляли під час пошуку лінкора):

Для пошуку катерів оптимальної стратегії немає, тому наприкінці гри доводиться спиратися переважно на успіх.

Оптимальне розміщення кораблів

Оптимальна стратегія розміщення кораблів у певному сенсі обернена до оптимальної стратегії стрільби. При стрільбі ми намагалися знайти найбільші кораблі, щоб скоротити кількість клітин, які потрібно перевіряти, за рахунок гарантовано вільних клітин. Значить, при розміщенні кораблі треба ставити таким чином, щоб у разі втрати мінімізувати кількість гарантовано вільних клітин. Як ви пам'ятаєте, лінкор у центрі поля відкриває для супротивника відразу 14 полів, але лінкор, що стоїть у кутку, відкриває для супротивника всього 6 полів:

Аналогічно, крейсер, що стоїть у кутку, замість 12 полів відкриває всього 6. В.о., розмістивши великі кораблі вздовж кордону поля, ви залишаєте більший простір для катерів. Т.к. стратегії для пошуку катерів немає, противнику доведеться стріляти навмання, і чим більше вільних полів у вас залишиться на момент лову катерів, тим важче буде виграти противнику.
Нижче представлено три способи розміщення великих кораблів, які залишають великий простір для катерів (позначено синім):


Кожна з наведених розстановок залишає для катерів рівно 60 вільних клітин, а це означає, що можливість випадково потрапити в катер становить 0,066. Для порівняння варто навести випадкове розміщення кораблів:

При такій розстановці для катерів залишається всього 21 клітина, а це означає, що ймовірність попадання на катер становить вже 0,19, тобто. майже втричі вище.

На закінчення хочу сказати, що не варто проводити занадто багато часу, граючи в морський бій. Особливо хочу застерегти вас від гри на лекціях. Коли я сидів у Вабі-Сабі і грав у морський бій зі своєю дівчиною, повз неї пройшла офіціантка і сказала, що вона дуже непогано грає, т.к. багато практикувалася на парах. Хто знає, ким би вона працювала, якби свого часу слухала лекції?

P.S. У коментарях абсолютно правильно вказують, що на хабрі вже були схожі публікації, було б неправильно не поставити посилання на них.

Поділіться з друзями або збережіть для себе:

Завантаження...