https://www.codingame.com/training/easy/onboarding
Условие Обучающая миссия для всех новичков: ваша программа должна найти, какая из двух целей является ближайшей.
Цель Ваша программа должна уничтожать вражеские корабли, стреляя в ближайшего врага на каждом ходу.
import sys # импорт системной библиотеки import math # импорт библиотеки математических функций # "бесконечный" цикл игры (останавливается извне, когда тесты будут пройдены) while True: enemy_1 = input() # имя первого врага dist_1 = int(input()) # дистанция до первого врага enemy_2 = input() # имя второго врага dist_2 = int(input()) # дистанция до второго врага # Здесь надо написать программу, которая находит имя врага, который ближе к защищаемому объекту. # Если требуется вывести отладочную информацию в консоль, следует использовать: # print("Debug messages...", file=sys.stderr) # где вместо "Debug messages...", можно выводить нужные сообщения или значения переменных... # Вместо фразы "name of the enemy" вывести значение переменной (enemy1 или enemy2), которое принадлежит врагу, # который находится ближе к защищаемому объекту. print("name of the enemy")
https://www.codingame.com/training/easy/the-descent
ЧТО Я БУДУ ИЗУЧАТЬ?
Циклы
Решение этой головоломки поможет вам понять концепцию циклов и способы получения максимального значения из списка целых чисел.
Задача
Простая проблема - опробовать платформу CodinGame: ваша программа должна найти самую высокую гору из списка гор.
Цель
Уничтожьте горы до того, как ваш корабль столкнется с одним из них. Для этого стреляйте в самую высокую гору на своем пути.
import sys import math # "Бесконечный" цикл, который заканчивается извне, когда пройдены все тесты. # В каждом шаге цикла while передается набор из 8 значений (высоты 8 вершин). # Необходимо найти номер самой высокой вершины в каждом шаге цикла while. while True: for i in range(8): mountain_h = int(input()) # на каждом из 8 шагов цикла, считывается высота одной из 8 вершин # To debug: print("Debug messages...", file=sys.stderr) # Для того, чтобы разрушить гору, следует написать индекс (номер) самой высокой вершины. # Замените "4" на имя переменной, которая хранит номер самой высокой вершины. print("4")
ЧТО Я БУДУ ИЗУЧАТЬ?
Условные операторы, циклы, массивы.
Условие
Ваша программа должна анализировать записи температур, чтобы найти наиболее близкие к нулю.
Инструкция
Напишите программу, которая печатает температуру, ближайшую к 0 среди вводимых данных. Если два числа одинаково близки к нулю, положительное целое число должно считаться ближайшим к нулю (например, если температуры равны -5 и 5, то отобразите 5).
Ввод данных
Строка 1: N , количество измерений температуры для анализа
Строка 2: значения измерений температуры, представленные в виде целых чисел в диапазоне от -273 до 5526
Вывод
Выведите 0 (ноль), если температура не указана. В противном случае отобразите температуру, ближайшую к 0.
Ограничения
0 ≤ N <10000
Пример
Ввод Вывод 5 1 1 -2 -8 4 5
import sys import math n = int(input()) # количество измерений температуры # функция split() преобразует строку значений, разделенных пробелами, в список (массив) # пример: # >>> a = "1 -2 -8 4 5" # >>> a.split() # >>> ['1', '-2', '-8', '4', '5'] # result = 0 # целевая переменная for i in input().split(): # функция int(i) преобразует значение температуры, представленное в текстовом виде, к целочисленному значению t = int(i) # ........ вычисления ............. # To debug: print("Debug messages...", file=sys.stderr) print(result) # вывод результата
ЧТО Я БУДУ ИЗУЧАТЬ?
Условные операторы
Простое решение использует 8 условий. Есть способ упростить его и использовать только 4 условия.
Условие
Ваша программа должна позволять Thor достигать координаты источника энергии на 2D-поле.
Правила
Тор движется по карте, которая в ширину 40 единиц, а в высоту 18 единиц. Обратите внимание, что координаты (X и Y) начинаются в левом верхнем углу! Это означает, что самая верхняя левая ячейка имеет координаты «X = 0, Y = 0», а самая нижняя правая ячейка имеет координаты «X = 39, Y = 17».
При перемещении Тора по поверхности, его координаты меняются. Цель Тора, достичь точки с координатами источника энергии.
import sys import math # --- # Hint: You can use the debug stream to print initialTX and initialTY, if Thor seems not follow your orders. # light_x: X позиция энергетического источника # light_y: Y позиция энергетического источника # initial_tx: Thor's starting X position (точка начала движения Тора на оси x) # initial_ty: Thor's starting Y position (точка начала движения Тора на оси y) light_x, light_y, initial_tx, initial_ty = [int(i) for i in input().split()] # игровой цикл (заканчивается автоматически, когда Тор достигнет цели, или когда у него закончится энергия) while True: remaining_turns = int(input()) # Уровень энергии, которая остается еще у Тора. # To debug: print("Debug messages...", file=sys.stderr) # Для перемещения Тора, следует вывести одно из направлений: N NE E SE S SW W or NW print("SE")
Цель
Эта головоломка научит вас, как сравнивать значения, используя простое условие.
https://www.codingame.com/training/easy/brackets-extreme-edition
Стек, цикл…
Цель
Правильная скобочная последовательность. Это означает, что все скобки (), квадратные скобки [] и фигурные скобки {}должны быть правильно спарены и вложены.
Выражение не содержит пробельных символов.
https://www.codingame.com/training/medium/paper-labyrinth
Graphs, BFS, Pathfinding, Strings, Compression