吊燈由n(3 <= n <= 16)個燈組成,並排成乙個圓圈。
在時間t時,他們會操作在時間t-1時左邊的燈是開著的燈的燈泡的開關。
他們會在b個單位的時間裡一直進行這樣的操作( 1 <= b <= 10^15 )
請注意,b可能會超過一般的32位整數的範圍。
現在已知每乙個燈的初始狀態,請計算出在經過b個單位的時間後,每乙個燈的狀態
輸入格式:
第1行是兩個整數,n和b
第2~1+n中,第i+1行描述了燈的初始狀態,用0(關)與1(開)表示
輸出格式:
n行,第i行應輸出乙個整數,描述燈的最終狀態,用0(關)與1(開)表示
輸入樣例#1:
5 610
000輸出樣例#1:1
1101
說明 樣例輸出解釋:
下面是樣例輸出的模擬
time t=0: 1 0 0 0 0
time t=1: 1 1 0 0 0
time t=2: 1 0 1 0 0
time t=3: 1 1 1 1 0
time t=4: 1 0 0 0 1
time t=5: 0 1 0 0 1
time t=6: 1 1 1 0 1
一開始就想到去模擬,只是奈何b太大了,但是可以發現存在規律,所以可以用模擬+找迴圈節ac這題。(b注意用long long)
/*10ms*/
#include
using namespace std;
typedef
long
long ll;
intmain()
} b[0]
=a;///將a陣列複製給b[0]陣列
for(
int i=
1;i<=b;i++)}
a[0]
=a[n]
; b[i]
=a;//cout(int u=
1;u<=i-
1;u++)}
rr=i;
if(y)
break
;///遇到迴圈節後打斷模擬過程}if
(rr==b)
}else}}
return0;
}
模擬 找規律
現代數學的著名證明之一是georg cantor證明了有理數是可列舉的。他是用下面這一張表來證明這一命題的 1 1 1 2 1 3 1 4 1 5 2 1 2 2 2 3 2 4 3 1 3 2 3 3 4 1 4 2 5 1 我們以z字形給上表的每一項編號。第一項是1 1,然後是1 2,2 1,3...
模擬 找規律
走格仔時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 在平面上有n n大小的正方形,定義正方形左下角座標是 1,1 右下角座標是 n,1 現在a君在左下角,他的初始方向是向右,他要在正方形內走m步 當a君碰到邊界...
找位置(簡單模擬)
對給定的乙個字串,找出有重複的字元,並給出其位置,如 abcaaab12ab12 輸出 a,1 a,4 a,5 a,10,b,2 b,11,1,8 1,12,2,9 2,13。輸入描述 輸入包括乙個由字母和數字組成的字串,其長度不超過100。輸出描述 可能有多組測試資料,對於每組資料,按照樣例輸出的...