有n盞路燈,編號為1~n。第1個人把所有的路燈都開啟,第2人按下所有編號為2的倍數的開關(這些燈將被關掉),第3個人按下所有編號為3的倍數的開關(其中關掉的被開啟,開啟的被關掉),依此類推。一共有k個人,問最後有哪些燈開著?。輸入n,k,輸出開著的燈的編號。k<=n<=1000。
樣例輸入:
7 3樣例輸出:
1 5 6 7
#include #define maxn 1005
int a[maxn];
int main()
{ int n,k,i=0,j=1;
scanf("%d%d",&n,&k);
for(i=0;i新知識點:
1、陣列複製:從陣列a複製k個元素到陣列b,memcpy(b,a,sizeof(int)*k) ,若a,b都是浮點型用memcpy(b,a,sizeof(double)*k) ,如果需要把陣列a全部複製到陣列b,可以寫為memcpy(b,a,sizeof(a))。 memcpy在string.h標頭檔案中
2、比較大的陣列應盡量宣告在main函式外,否則程式可能無法執行。
77 開燈問題
時間限制 3000 ms 記憶體限制 65535 kb 難度 1 描述 有n盞燈,編號為1 n,第1個人把所有燈開啟,第2個人按下所有編號為2 的倍數的開關 這些燈將被關掉 第3 個人按下所有編號為3的倍數的開關 其中關掉的燈將被開啟,開著的燈將被關閉 依此類推。一共有k個人,問最後有哪些燈開著?輸...
ACM 開燈問題
有n盞燈,編號為1 n.第乙個人把所有的燈開啟,第二個人按下所有的編號為2的倍數的開關,這些燈全部被關掉,第三個人按下編號為3的倍數的開關,其中關掉的燈將被開啟,開著的燈將被關閉 以此類推,一共有k個人,問最後那些燈是開著的?輸入 n和k 輸出開著燈的編號 k n 1000 include incl...
開燈問題程式
1 開燈問題 有n盞燈,編號為1 n。第乙個人把所有燈開啟,第二個人按下所有編號為2的倍數的開關 這些燈將被關掉 第3個人按下所有編號為3的倍數的開關 其中關掉的燈將被開啟,開著的燈將被關閉 一次類推。一共有k個人,問最後有哪些燈開著?輸入 n和k,輸出開著的燈的編號以及數目。k n 1000 方法...