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
Ответы
Ответ дал:
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()
Похожие вопросы
2 года назад
2 года назад
2 года назад
8 лет назад
8 лет назад
9 лет назад
9 лет назад