第一題
給乙個偶數個數的陣列,每兩個陣列合成乙個數後使得最大最小數之差最小:
很簡單,先把陣列排序,然後把第乙個和最後乙個數組合,第二個和倒數第二個數組合。。。。。。得到組合後的陣列,然後最大值減去最小值就得到結果。
第二題給很多個0到9這10個數,取a+b個數組成長度為a和b的兩個數,前面可以有0,使得他兩乘積最小:
想了下,測試了下,先找到較小數,然後把0放入較小數中,對剩餘的數乙個乙個再放入兩個數中,這樣乘積最小:
# -*- coding:utf-8 -*-
__author__ =
'shawda'
defget_res
(counts, a, b)
:if counts[0]
>=
min(a, b)
or(a+b)
>
sum(counts)
:return
0 min_num, max_num, nums =
min(a, b)
,max
(a, b),[
]for i, count in
enumerate
(counts[1:
]): nums +=
[i+1
]*count
a, b =[0
]*counts[0]
,[]# 一人乙個
for i, num in
enumerate
(nums):if
len(a)
== min_num:
break
if i%2==
0:else
: b += nums[i:i+max_num-
len(b)
] a =
int(
''.join(
list
(map
(str
, a)))
) b =
int(
''.join(
list
(map
(str
, b)))
)return a*b
counts =
list
(map
(int
,input()
.split())
)a =
int(
input()
)b =
int(
input()
)print
(get_res(counts, a, b)
)
第三題
leetcode原題,簡單的二維動態規劃,就是這個:leetcode72. 編輯距離,很經典的一題。
9月10日360筆試程式設計題
最強大腦 題目描述 把從n到m車站看到的旗幟顏色依次列出來,然後告訴你小b記得的旗幟顏色序列,判斷小b究竟是從n和m之間哪些方向才能看到所說顏色的旗幟。可能的結果有 forward backward both invalid 輸入示例 atobab aaacaaa acaaa 輸出示例 forwar...
2018拼多多校招筆試貪心程式設計題小熊吃糖詳解
有n只小熊,他們有著各不相同的戰鬥力。每次他們吃糖時,會按照戰鬥力來排,戰鬥力高的小熊擁有優先選擇權。前面的小熊吃飽了,後面的小熊才能吃。每只小熊有乙個飢餓值,每次進食的時候,小熊們會選擇最大的能填飽自己當前飢餓值的那顆糖來吃,可能吃完沒飽會重複上述過程,但不會選擇吃撐。現在給出n只小熊的戰鬥力和飢...
2023年4月10號春招實習拼多多筆試題解
昨天剛做的拼多多筆試題,說一下題解思路,第三題開始沒什麼時間寫了,所以沒提交,不知道能不能全ac。第 三 四題,可以僅當做思路,因為是做完才想明白的。第一題 給兩個陣列l1,l2,乙個提前量offset,乙個數字n。l1,l2是商品列表,offset是已經展示過的商品數量,n是要求展示的商品數量,輸...