2020 08 08網易筆試

2021-10-08 22:55:30 字數 1432 閱讀 6623

注釋部分**超時了,優化後如下:

def

test1()

: n =

int(

input()

) arr =

list

(map

(int

,input()

.strip(

).split(

" ")))

[:n]

res =

0for i in

range

(n):

res += countprime(arr[i]

)return res

defcountprime

(n):

if n <2:

return

0 count =

0 count = n //

2# while n >= 2:

# n -= 2

# count += 1

return count

if __name__ ==

'__main__'

:print

(test1(

))

思路:先求總和,之後依次判斷總和中的元素是否有「5」,若存在5,將最小的元素彈出並累計彈出元素和。

def

test3()

: n =

int(

input()

) arr =

list

(map

(int

,input()

.strip(

).split(

" ")))

# n = 1

# arr = [5]

arr.sort(reverse=

true

) count =

0 res =

sum(arr)

tem = res

while tem >0:

if tem %

10==5:

lastpop = arr.pop(

) count += lastpop

if arr:

res =

sum(arr)

+ count - lastpop

tem = res

continue

else

:return

0 tem = tem //

10return res

if __name__ ==

'__main__'

: res = test3(

)print

(res)

2012網易筆試題

1 24小時內,表的時針 分針 秒針完全重合多少次?分別是什麼時刻。2 100萬條記錄,可以通過權值比較大小,選取權值最大的前100條記錄,並有序排列後輸出 3 鏈式資料結構,檢測是否有環 4 用反射建立classa的例項和classa陣列的例項 5 聯合索引的問題。問select語句如何寫,才能用...

2012 10 10網易筆試題

一.用位運算實現加法 int add int a,int b 二.確定cpu的大小端方式 筆試的時候此題做錯了,竟用移位去做.對於此操作,移位不起作用.int main 三.圖的深度遍歷 筆試的時候沒有寫出來,寫出思路為利用棧乙個個結點壓入.直到棧頂那個結點無指向子鏈結或連線已遍歷過或指向的鏈結的結...

2012 10 10網易筆試題

一.用位運算實現加法 int add int a,int b 二.確定cpu的大小端方式 筆試的時候此題做錯了,竟用移位去做.對於此操作,移位不起作用.int main 三.圖的深度遍歷 筆試的時候沒有寫出來,寫出思路為利用棧乙個個結點壓入.直到棧頂那個結點無指向子鏈結或連線已遍歷過或指向的鏈結的結...