задачки
sgmdlt opened this issue · 1 comments
sgmdlt commented
заливал через форму на сайте, но скопирую сюда
Count your score in a game of rock-paper-scissors. You are given two arrays: your moves and your opponent’s moves. You get 1 point for a win, -1 for a loss, and 0 for a draw. Let me remind you that according to the rules:
- rock beats scissors.
- scissors beat paper
- paper beats rock
Посчитайте свой счет в игре камень-ножницы-бумага. Вам даны два массива: ваши ходы и ходы противника. За победу вы получаете 1 очко, за поражение -1 и 0 за ничью. Напомню, что по правилам:
- камень бьет ножницы
- ножницы бьют бумагу
- бумага бьет камень
2 = solution([‘r’, ‘p’, ‘s’], [‘s’, ‘p’, ‘p’])
explanation:
‘r’ beats ‘s’, score + 1
‘p’ ties ‘p’, score + 0
‘s’ beats ‘p’, score + 1 total score = 2
-3 = solution([‘p’, ‘p’, ‘p’], [‘s’, ‘s’, ‘s’])```
sgmdlt commented
на питоне
def solution(yr_rounds, op_rounds):
rules = {
'r': {'s': 1, 'p': -1, 'r': 0},
's': {'p': 1, 'r': -1, 's': 0},
'p': {'r': 1, 's': -1, 'p': 0},
}
return sum(rules[yr_choice][op_choice] for yr_choice, op_choice in zip(yr_rounds, op_rounds))