8.04 Прочие прототипы
Ошибка.
Попробуйте повторить позже
Сколькими способами можно расставить на шахматной доске восемь ферзей так, чтобы они не угрожали друг другу, т. е. никакие два не стояли на одной вертикали, горизонтали и диагонали?
Примечение: Ферзь ходит на любое количество клеток по диагоналям, по вертикали и по горизонтали.
from itertools import permutations n = 8 # Зафиксируем все позиции по x, # т.к. в одном столбце стоять не могут x = [1, 2, 3, 4, 5, 6, 7, 8] count = 0 for i in permutations(’12345678’, 8): y = [int(_) for _ in i] # перебор различных позиций по y flag = True for k in range(n): for j in range(k + 1, n): if abs(x[k] - x[j]) == abs(y[k] - y[j]): flag = False break if not flag: break if flag: count += 1 print(count)
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!