Python Задача. Треугольная последовательностьДана монотонная последовательность, в...

0 голосов
446 просмотров

Python Задача. Треугольная последовательностьДана монотонная последовательность, в которой каждое натуральное число k встречается ровно k раз: 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, ...По данному натуральному n выведите первые n членов этой последовательности. Попробуйте обойтись только одним циклом for.Входные данныеВводится натуральное число n.Выходные данныеВыведите ответ на задачу.Примерывходные данные2выходные данные1 2 входные данные5выходные данные1 2 2 3 3


Информатика (36 баллов) | 446 просмотров
0

Какие ограничения для n?

Дан 1 ответ
0 голосов

Будем поддерживать переменную cur и хранить в ней текущее число для вывода. Также будем поддерживать переменую k и хранить количество уже выведенных чисел cur. В цикле будем выводить cur и увеличивать k на 1. Если k стало равно cur, увеличим cur на 1 и сбросим k на 0. И, очевидно, будем делать это n раз.


Код

n = int(input())

cur = 1

k = 0

for i in range(n):

   print(cur, end=' ', flush=True)

   k = k + 1

   if k == cur:

       k = 0

       cur = cur + 1

print()


(3.7k баллов)