1 和leetcode547很像,一開始可以先把滿足》3的變成1,然後就轉換成leetcode547了
2
def
getres
(n):
f=[0
]*(n+1
) f[0]
=1for i in
range(1
,n+1):
for j in
range
(i):
f[i]
+=f[j]
*f[i-
1-j]
return f
print getres(n//
2)
def
slide
(data,choice)
:if choice==2:
#down
for lie in
range(4
):times=
3for hang in
range(3
,-1,
-1):
if data[hang]
[lie]
: data[times]
[lie]
=data[hang]
[lie]
if hangdata[hang]
[lie]=0
times-=
1if choice==1:
#upfor lie in
range(4
):times=
0for hang in
range(4
):if data[hang]
[lie]
: data[times]
[lie]
= data[hang]
[lie]
if hang > times:
data[hang]
[lie]=0
times +=
1if choice==3:
#left
for hang in
range(4
):times=
0for lie in
range(4
):if data[hang]
[lie]
: data[hang]
[times]
= data[hang]
[lie]
if lie > times:
data[hang]
[lie]=0
times +=
1if choice==4:
for hang in
range(4
):times=
3for lie in
range(3
,-1,
-1):
if data[hang]
[lie]
: data[hang]
[times]
= data[hang]
[lie]
if lie < times:
data[hang]
[lie]=0
times -=
1return data
# data=[[0,0,2,2],[0,0,0,2],[0,0,4,8],[0,0,4,8]]
defgetres
(data,choice)
: data = slide(data,choice)
if choice==2:
for lie in
range(4
):for hang in
range(3
,0,-
1):if data[hang]
[lie]
==data[hang-1]
[lie]
: data[hang]
[lie]
=data[hang]
[lie]*2
data[hang-1]
[lie]=0
if choice==1:
for lie in
range(4
):for hang in
range(3
):if data[hang]
[lie]
==data[hang+1]
[lie]
: data[hang]
[lie]
= data[hang]
[lie]*2
data[hang +1]
[lie]=0
if choice==3:
for hang in
range(4
):for lie in
range(3
):if data[hang]
[lie]
==data[hang]
[lie+1]
: data[hang]
[lie]
=data[hang]
[lie]*2
data[hang]
[lie+1]
=0if choice==4:
for hang in
range(4
):for lie in
range(3
,0,-
1):if data[hang]
[lie]
==data[hang]
[lie-1]
: data[hang]
[lie]
=data[hang]
[lie]*2
data[hang]
[lie-1]
=0res=slide(data,choice)
return res
import sys
if __name__ ==
"__main__"
:# 讀取第一行的n
n =int(sys.stdin.readline(
).strip())
ans =
0 res=
for i in
range(4
):# 讀取每一行
line = sys.stdin.readline(
).strip(
)# 把每一行的數字分隔後轉化成int列表
values =
list
(map
(int
, line.split())
) result=getres(res,n)
for line in result:
print
(' '
.join(
map(
str,line)
))
第四題超時了,等大佬 位元組第二次筆試題目
因為7月4號的筆試時間記錯了,遲了40分鐘,只ac了前面兩題,應該沒過 7月11號守著電腦來做的,ac了三道題,不知道能不能給機會面試,宇宙條太狠了 1.動態規劃問題 幾個人排隊,找出這個位置的人前面最近的身高高於他的人的身高 2.入棧,出棧的序列是否合法 通過乙個輔助棧吧,leetcode上面的劍...
2019 9 1騰訊第二次筆試
第三題 有n個人,每個人有兩個值ai,bi,第i個人的不滿意度為站在他前面的人的個數乘以ai 加上站在他後面的人的個數乘以bi。0 每個人的下標 n 1 給他們排好序,value i i a i n 1 i b i,使得所有value i相加最小是多少 第四題 種白花和紅花,白花必須有k的倍數個相連...
《位元組跳動》筆試第二題
題目 輸入 第一行輸入乙個數n,表示下邊有幾行。接下來輸入n行,每一行格式為1,2 3,4 5,6.輸出 將重疊部分進行合併的結果,按從小到大輸出。例如 python實現 import sys if name main n input q for i in range n line sys.stdi...