По питону!
1.
петя и вася часто играют в различные логические игры. недавно петя поведал васе о
новой игре «быки и коровы» и теперь они играют в эту игру сутками. суть игры
проста: петя загадывает четырехзначное число, состоящее из различных цифр. вася
отгадывает задуманное петей число, перебирая возможные варианты. каждый раз вася
предлагает вариант своего числа, а петя делает васе подсказку: сообщает количество
быков и коров, после чего вася с учетом подсказки продолжает отгадывание числа до тех
пор, пока не отгадает. быки – это количество цифр в предложенном васей числе,
по значению и стоящих в правильной позиции в задуманном петей числе.
коровы – количество цифр, по значению, но находящихся в неверной
позиции. например, если петя задумал число 5671, а вася предложил вариант 7251, то
число быков равно 1 (только цифра 1 на своем месте), а число коров равно 2 (только
цифры 7 и 5 не на своих местах). петя силен в , но даже он может ошибаться.
пете написать программу, которая бы по загаданному петей и предложенному
васей числам сообщала количество быков и коров.
входные данные
во входной строке записано два четырехзначных натуральных числа a и b через
пробел, где а – загаданное петей число, а в – предложенный васей вариант.
выходные данные
в результате нужно вывести два целых числа через пробел — количество быков и
коров.
2.
задана последовательность, состоящая только из символов ‘> ’, ‘< ’ и ‘-‘. требуется
найти количество стрел, которые спрятаны в этой последовательности. стрелы – это
подстроки вида ‘> > --> ’ и ‘< --< < ’.
входные данные
во входных данных записана строка, состоящая из символов ‘> ’, ‘< ’ и ‘-‘ (без
пробелов). строка состоит не более, чем из 250 символов.
выходные данные
в результате нужно вывести искомое количество стрелок.
Для решения этой задачи нам нужно вычислить количество быков и коров.
Шаг 1: Ввод данных
Сначала мы должны ввести два четырехзначных числа - a и b, разделенных пробелом. Число a - загаданное петей число, а число b - предложенный васей вариант.
Шаг 2: Создание функции для подсчета быков и коров
Теперь давайте создадим функцию, которая будет принимать два числа a и b и возвращать количество быков и коров. Мы будем сравнивать каждую цифру числа a с соответствующей цифрой числа b и считать быков, если цифры равны и находятся на правильной позиции, и коров, если цифры равны, но находятся в неверной позиции.
Шаг 3: Преобразование чисел в строки
Прежде чем начать сравнивать цифры числа a и числа b, преобразуем оба числа в строки. Это позволит нам сравнивать каждую цифру по отдельности.
Шаг 4: Создание переменных для подсчета быков и коров
Мы создадим две переменные - bulls (для подсчета быков) и cows (для подсчета коров) и инициализируем их нулями.
Шаг 5: Итерация по цифрам чисел
Теперь мы будем итерировать по каждой позиции в строках чисел a и b и сравнивать соответствующие цифры. Если цифры равны, мы увеличиваем количество быков (если цифра находится на правильной позиции) или количество коров (если цифра находится в неверной позиции).
Шаг 6: Вывод результатов
Наконец, мы выводим количество быков и коров через пробел.
Вот полный код решения на языке Python:
```
# Шаг 1:
a, b = input().split()
a = str(a)
b = str(b)
# Шаг 2:
def count_bulls_and_cows(secret, guess):
secret = str(secret)
guess = str(guess)
bulls = 0
cows = 0
# Шаг 5:
for i in range(len(secret)):
if secret[i] == guess[i]:
bulls += 1
elif secret[i] in guess:
cows += 1
# Шаг 6:
return bulls, cows
# Шаг 3, Шаг 4:
result = count_bulls_and_cows(a, b)
# Шаг 6:
print(result[0], result[1])
```
2. Задача "Стрелки":
В этой задаче нам нужно найти количество стрелок в заданной последовательности символов.
Шаг 1: Ввод данных
Вводим строку, состоящую из символов '>', '<' и '-' без пробелов.
Шаг 2: Создание функции для подсчета стрелок
Теперь создадим функцию, которая будет принимать строку и возвращать количество стрелок. Мы будем искать в строке подстроки вида '>>-->' и '<<--<' и подсчитывать их.
Шаг 3: Итерация по строке
Мы будем использовать метод строки .count() для подсчета количества подстрок вида '>>-->' и '<<--<' в заданной строке.
Шаг 4: Вывод результата
Выводим количество стрелок.
Вот полный код решения на языке Python:
```
# Шаг 1:
sequence = input()
# Шаг 2:
def count_arrows(sequence):
count_right = sequence.count('>>-->')
count_left = sequence.count('<<--<')
return count_right + count_left
# Шаг 3:
result = count_arrows(sequence)
# Шаг 4:
print(result)
```
Надеюсь, эти пошаговые решения помогут тебе лучше понять задачи и их решения!