愛奇藝19秋招程式設計題

2021-08-28 13:20:30 字數 2013 閱讀 9310

最少的盒子

時間限制:c/c++語言 1000ms;其他語言 3000ms

記憶體限制:c/c++語言 131072kb;其他語言 655360kb

題目描述:

bob有n個空盒子,第i個盒子是邊長為a[i]的立方體,如果乙個盒子的邊長嚴格小於另乙個盒子,並且大盒子裡面沒有其他小盒子,小盒子也沒有放入其他大盒子中,那麼這個小盒子可以放入大盒子。bob可以根據條件任意的放盒子,因為他想看見最少數量的盒子。沒有放入其他盒子的盒子是可以被看到的,請你幫bob確定能看見盒子的最少數量。

測試用例

31 2 3

這題思路很簡單,能疊加放的無非是遞增序列,首先我們找出最長的遞增序列,然後遞迴就好,注意遞迴出口

ac**

def f(target):

if(len(target)) == 0:

return

if(len(target) == 1):

return [target]

for i in target:

if i <= 0:

return

tmp = sorted(list(set(target)))

res =

dic_target = {}

for i in target:

if i not in dic_target:

dic_target[i] = 1

else:

dic_target[i] += 1

for i in dic_target:

res += (dic_target[i] -1) * [i]

return f(res)+[tmp]

while true:

x = raw_input()

y = map(lambda x:int(x),raw_input().split())

print len(f(y))

第二題,

清雨的自助餐

時間限制:c/c++語言 1000ms;其他語言 3000ms

記憶體限制:c/c++語言 131072kb;其他語言 655360kb

題目描述:

清雨又在吃自助餐了。

排在清雨面前的有n種食物,排成一排,清雨可以選擇其中的若干種食物,但是不能連續選擇相鄰的食物。因為清雨很挑食,當所有食物都不合口味時,他可以一種都不選,即乙個都不選也算為一種方法。

請問他有多少種選擇食物的方法呢?

樣例輸出

簡單的思路是斐波那契數列,ac**如下:

def f(n):

if(n == 0):

return 1

if(n == 1):

return 2

count = 0

a = 1

b = 2

while(count < n):

a,b = b,a+b

count += 1

return a

while true:

x = int(raw_input())

print f(x)

但是,這題其實很好玩,我們完全可以採用遞迴的思想,n個點所有方案,可以看成第n個點的方案和前面n-1個方案的和,我們可以從第n個點來看,如果第n個與前面n-1種選擇方案中相鄰,那麼就跳過,不然就合併成一種新的方案,加入到總體方案中去,基於這個思路可以用下列**輸出所有的結果:

def f(n):

if(n == 0):

return

if(n == 1):

return [[1],]

tmp =

x = n - 1

for i in f(n-1):

if x not in i:

return tmp + f(n - 1)

while true:

x = int(raw_input())

print f(x)

遺憾的是這段**超時了,只能不情願的寫斐波那契方法

愛奇藝程式設計題

1 爐石傳說 時間限制 c c 語言1000ms 其他語言3000ms 記憶體限制 c c 語言65536kb 其他語言589824kb 題目描述 小明喜歡玩一款叫做爐石傳說的卡牌遊戲,遊戲規則如下,玩家擁有n顆水晶和m張卡牌,每張卡牌的使用會消耗a顆水晶並且造成b的傷害值,請你幫小明算一下該如何使...

愛奇藝20屆春招程式設計題1

題目 根據自己的回憶寫出題目大概的意思 輸入一串只包含數字的字串str和乙個整數k,從字串中剔除k個數字,使剩下的字串按照原來的順序,得到的整數最小,輸出這個整數。字串長度n 240,k n。示例1 輸入 12553 2 輸出 123 示例2 輸入 100050 4 輸出 0 錯誤思路 考試的時候,...

2021屆秋招 愛奇藝筆試 匹配括號

題目描述 輸入字串只包括 檢查是否正確匹配 思路 簡單題,棧頂匹配就完事了 public class num3 hashmapkuomap new hashmap kuomap.put smallright,smallleft kuomap.put middleright,middleleft ku...