В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
zeynalova79
zeynalova79
08.01.2021 03:15 •  Информатика

Задача B.01: Конь в поле
Эта задача с открытыми тестами. Ее решением является набор ответов, а не программа на языке программирования. Тесты указаны в самом условии, от вас требуется лишь ввести ответы на них в тестирующую систему.

На шахматном поле размером N × N клеток пасется шахматный конь. Сейчас он находится в клетке с координатами (x1, y1). Сегодня шахматный конь узнал, что на клетке с координатами (x2, y2) начала расти его любимая шахматная трава и он захотел добраться туда как можно быстрее, пока трава не завяла.

Вам требуется определить, за какое наименьшее количество ходов он сможет добраться до этой клетки.

Напомним, что шахматный конь за один ход изменяет одну из координат на 2, а другую на 1. Например, если конь стоит в клетке (3, 4), то за один ход он может попасть в клетки (1, 3), (1, 5), (2, 2), (2, 6), (4, 2), (4, 6), (5, 3) и (5, 5). Конь не может выходить за пределы шахматного поля.

Формат входных данных
Тест №1: N = 4, (x1, y1) = (1, 1), (x2, y2) = (2, 2);

Тест №2: N = 5, (x1, y1) = (4, 2), (x2, y2) = (2, 1);

Тест №3: N = 6, (x1, y1) = (2, 5), (x2, y2) = (4, 1);

Тест №4: N = 7, (x1, y1) = (2, 1), (x2, y2) = (7, 3);

Тест №5: N = 8, (x1, y1) = (6, 2), (x2, y2) = (4, 7);

Тест №6: N = 9, (x1, y1) = (8, 3), (x2, y2) = (1, 2);

Тест №7: N = 10, (x1, y1) = (10, 4), (x2, y2) = (10, 6);

Тест №8: N = 11, (x1, y1) = (10, 3), (x2, y2) = (8, 10);

Тест №9: N = 12, (x1, y1) = (12, 9), (x2, y2) = (1, 9);

Тест №10: N = 13, (x1, y1) = (1, 13), (x2, y2) = (12, 1);

Формат результата
В поле ввода ответа впишите единственное число — наименьшее количество шагов, за которое шахматный конь сможет добраться от клетки с координатами (x1, y1) до клетки с координатами (x2, y2).

Показать ответ
Ответ:
88арина99
88арина99
06.05.2020 04:51

Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1

52

Нормализованная экспоненциальная запись числа – это запись вида

a = ± m * P^(q)

Где q – целое число (положительное, отрицательное или ноль) m – правильная Р-ичная дробь, у которой целая часть состоит из одной цифры, при этом m – это мантисса числа, а q – порядок (или экспонента) числа.

В нашем случае:

1,6898*10^-3

Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.

1616

0,0(0 оценок)
Ответ:
sem212
sem212
11.01.2023 09:58

import turtle

from math import tan, sqrt, pi

def prepare(x, y, color):

  turtle.penup()

  turtle.goto(x, y)

  turtle.pendown()

  turtle.color(color)

  turtle.begin_fill()

def draw_polygon(num_sides, side_length):

  angle = 360.0 / num_sides

  for i in range(num_sides):

      turtle.forward(side_length)

      turtle.right(angle)

  turtle.end_fill()

def calc_s(num_sides, side_length):

  return num_sides * side_length ** 2 / (4 * tan(pi/num_sides))

def calc_side(square):

  return sqrt(4 * square * tan(pi/num_sides) / num_sides)

turtle.hideturtle()

turtle.speed(10)

colors = ['red', 'green', 'blue', 'cyan', 'magenta', 'black', 'yellow', 'pink', 'brown']

xcoords = [0, 150, -150, 150, -150, 270, -270, 270, -270]

ycoords = [0, 150, -150, -150, 150, 270, -270, -270, 270]

squares = []

numsides = []

for i in range(9):

  num_sides = i + 3

  square = round(calc_s(num_sides, 100), 2)

  side_length = round(calc_side(10000), 3)

  squares.append(square)

  numsides.append(num_sides)

  print("Углов:", num_sides, "была площадь:", square, "стала длина грани:", side_length,

        "изменение в", round(side_length/100, 2), "раз")

  prepare(xcoords[i], ycoords[i], colors[i])

  draw_polygon(num_sides, side_length)

turtle.exitonclick()

print("Список количество углов:", numsides, end="")

print("Список площади:", squares)

Объяснение:

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота