Форум сайта python.su
Занумеруем пальцы правой руки: 1 - мизинец, 2 - безымянный, 3 - средний, 4 - указательный и 5 - большой.
Начнём считать пальцы на правой руке: первый - мизинец, второй - безымянный, третий - средний, четвёртый - указательный, пятый - большой, шестой - снова указательный, седьмой - снова средний, восьмой - безымянный, девятый - мизинец, десятый - безымянный и т.д.
Какой палец будет по счёту под номером N?
Формат вводных данных:
В единственной строке записано число N (N<= 2 * 10^9)
Формат выходныз данных:
Требуется вывести одно число - номер пальца, на котором остановится счет.
Подкиньте решений и идей пожалуйста,потому что задача идёт очень туго.
Офлайн
я бы вот так сделал
fingers = { 0: 'мизинец', 1: 'безымянный', 2: "средний", 3: 'указательный', 4: 'большой', 5: 'указательный', 6: "средний", 7: 'безымянный', 8: 'мизинец', 9: 'безымянный' } number_of_fingers = {'мизинец': 1, 'безымянный': 2, 'средний': 3, 'указательный': 4, 'большой': 5} def name_of_the_finger(num): n = abs(int(num)) if 0 < n < 10: return number_of_fingers[fingers[n - 1]] elif n > 9: return number_of_fingers[fingers[n % 9]] num = input() print(name_of_the_finger(num))
Офлайн