алгоритм базировался на прошлых картинках+мысль загнать корабль в угол (который отбросит парочку вариантов автоматом) затем прострелять все у кромки. результат на картинке.

нумерация стрельбы приобрела стратегическое значение ))
на счет второго вопроса - получил с допущениями число 45.. которое на практике всегда меньше , но высчитать его точно - вообще нереально
альтернатива - написать программку которая переберет все сочетании на основании предыдущих картинок
24*22*20*18*16*14 == 42,5 млн вариантов для перебора всех возможных значений. ээм бумажки с ручкой точно не хватит