generate functionWed, 03 May 2023

'''Напиши код программы на языке python. Вводится натуральное число n - количество людей. Вводится натуральное число m - количество дней. Вводится натуральное число k - количество столов. Введите количество мест за каждым столом. За каждым столом разное количество сидячих мест, но сумма всех мест равна n. Написать алгоритм рассадки людей от 1 до m дней, так чтобы за это время каждый из людей посидел с максимально возможным количеством человек. Вывести на экран поэтапно с первого по m день, номера стола, людей сидящих за столами''' # Ввод данных от пользователя n = int(input("Введите количество людей: ")) m = int(input("Введите количество дней: ")) k = int(input("Введите количество столов: ")) # Создание списка количества мест за каждым столом seats = [] for i in range(k): seats.append(int(input(f"Введите количество мест за {i+1}-м столом: "))) # Создание списка гостей guests = [i+1 for i in range(n)] # Рассадка гостей за столами for day in range(1, m+1): print(f"День {day}:") for table in range(k): table_guests = guests[:seats[table]] guests = guests[seats[table]:] print(f" На столе {table+1} сидят люди с номерами: {table_guests}") if not guests: break

# Решение предыдущего задания def birthday(n, m, k): seats = [] for i in range(k): seats.append(int(input(f"Введите количество мест за {i+1}-м столом: "))) guests = [i+1 for i in range(n)] for day in range(1, m+1): print(f"День {day}:") for table in range(k): table_guests = guests[:seats[table]] guests = guests[seats[table]:] print(f" На столе {table+1} сидят люди с номерами: {table_guests}") if not guests

Questions about programming?Chat with your personal AI assistant