https://www.luogu.org/problemnew/show/P1876
題目描述
首先所有的燈都是關的(注意是關!),編號爲1的人走過來,把是一的倍數的燈全部打開,編號爲二的的把是二的倍數的燈全部關上,編號爲3的人又把是三的倍數的燈開的關上,關的開起來……直到第N個人爲止。
給定N,求N輪之後,還有哪幾盞是開着的。
輸入輸出格式
輸入格式:
一個數N,表示燈的個數和操作的輪數
輸出格式:
若干數,表示開着的電燈編號
輸入輸出樣例
輸入樣例:
5
輸出樣例:
1 4
原理很簡單,不再贅述
不懂可參考洛谷題解:https://www.luogu.org/problemnew/solution/P1876
1
# -*- coding: utf-8 -*-
N = input()
N = int(N)
for i in range(1, int(N**0.5)+1):
print(i**2, end=' ')
2
# -*- coding: utf-8 -*-
N = input()
N = int(N)
for i in range(1, N+1):
if(i**2 > N):
break
print(i**2, end=' ')