CodeLab
145 subscribers
538 photos
20 videos
159 links
Говорим просто о сложном

Обсуждение, новости, материал и сплетни — все здесь https://t.me/CodeLabMLChat
Download Telegram
CodeLab
Как нам уже сказали, конь ходит буквой Г. И если мы очень хорошо взглянем на координаты, то следующее: берем наш пример, начальные координаты коня 5:4, если он пойдет буквой Г как показано на рисунке, то его x меняется на 1, а его y меняется на 2, аналогично…
Теперь, что насчет коня и решения к нему. Как я уже сказал, разница координат должна быть 1 и 2, так как конь ходит буквой 'Г', но вот будет ли разница 2 между исками или игриками, зависит от того, куда мы решим походить, именно поэтому, самое легкое решение будет через модуль (как по мне). Тем более, мы рассматривали это решение в задании 'ход Слона'. Итак, просто визуализируем наше решение.
Вот вам подобное решение, но тут мы расписываем немного больше, рассматриваем все разницы координат. По сути, мы всего-то должны знать для решения данной задачи, что фигура ходит вот так - 'Г', и представлять координаты на шахматной доске.
В закрепленном комментарии мы видим вот такое шикарное решение. Тут ничего сложного нет, но я конечно же до этого не смог додуматься. У нас по факту фигурируют только цифры 1, -1, 2, -2, так что произведение этих самых сдвигов кроме как -2 или 2 по другому и не получится, опять же учитывая тот факт, что фигура ходит буквой 'Г', где мы преодолеваем 2 клетки вниз, вверх, вправо влево и одну клетку по такой же траектории. Ну и еще одно решение, достаточно интересное...
👍1
Теорема Пифагора, кто бы мог подумать, а ведь кто-то смог. Тут вроде все понятно, фигура преодолевает две клетки и затем 1 на 90 градусов, по сути, образуя прямоугольный треугольник. Вот и по теореме Пифагора 'квадрат длины гипотенузы равен сумме квадратов длин катетов', пишем код. Поскольку мы изначально знаем, как может ходить фигура, то можно понять, что сумма квадратов катетов 1 и 4 будет равна 5.
Всем споки гайс, завтра продолжим кодить
Итак, там дальше вот такая хуйня идет крутая, но я ее разберу завтра сутра, пока что думаю выложить пару задачек полегче #Ход_ферзя
Первая задачка, тут по примеру все ясно. Цикл for, напомню, нужен для перебора последовательностей. Для начала создаем переменную n = int(input), int, потому что целочисленный тип данных. Затем пишем классическое for i in range(n), Как раз таки n в скобках это наша последовательность, элементы которой и будет обходить наш цикл for. Ну и дальше пишем print('*' * (n - i)). Почему, собственно, так? Допустим, подается 5, на первой итерации (повторении цикла), у нас будет i принимать значение 0. Само по себе i является итератором. Итератор, к слову — это переменная, которая принимает каждое значение из последовательности по одному за каждую итерацию цикла. Когда i принимает значение 0, print выводит 5 звездочек, поскольку (5-0) * '*'. С каждой итерацией, меняться будет только i, поэтому выводиться будет все 'обратной лесенкой'. #Звездный_треугольник (7.1)
Все добрый день, не дай бог вы все еще спите. Как и говорил, разбираем финального босса. Ферзь... Он, кстати, в отличие от своих коллег очень даже преуспел и ходит слишком своевольно. Для начала, можно заметить, что сама задача состоит из двух прошлых: Ход ладьи(1) и ход слона(2). Один ходит по горизонтали и вертикали и горизонтали, другой по диагонали. #Ход_ферзя
👍1
Для начала, пропишем условие, чтобы наш чел мог попасть с одной клетки на другую по вертикали и горизонтали. Я прикрепляю самую ахуенную картинку для понимая этих задачек. Возьмем 2 картинку и представим, что зеленая клетка это позиция нашей фигуры. Она может пойти по вертикали или горизонтали. Допустим, идет она по вертикали, и, чтобы это условие выполнилось, ее координаты по y должны быть равны (y1 == y2). По вертикали выделены синие координаты, по горизонтали красные. А если мы решим пойти по горизонтали, то равны будут ее x (x1 == x2).
Вот так будет выглядеть условие для хода фигуры по вертикали и горизонтали.
Дальше, нам нужно, чтобы ферзь мог пойти по диагонали с одной клетки на другую, мы уже будем обращаться к слону, потому что он так ходит. Итак. смотрим на вторую картинку. Зеленым выделена клетка нашего ферзя, который хочет пойти по диагонали. Сумма координат синих клеток будет всегда равна, также как и разница красных. Код будет немного позже
йоу воссап, сори что пропал на несколько дней, для начала пишем код для нашей задачки. Кстати, если вам удобно, то можно и по этой фотке ориентироваться, например, для ладьи это выглядело бы вот так (2 фотка). Зеленым цветом обозначена начальная клетка и клетка, на которую мы ходим. Зеленая клетка (8) имеет координаты 4;4, а другая зеленая (7) имеет координаты 3;4. Так что по вертикали изменяться будет только y.