某公司經理希望在聖誕節期間通過**組合裝來提高公司商品的銷售量。組合裝裡有不同種類的商品,以不同順序排列。每個商品都有唯一的characterid。而每個組合裝也有唯一的comboid,由組合裝中各種商品的排列順序表示。組合裝的comboid是通過將組合裝中商品的characterid按其在組合裝中的排列順序形成的。例如,如果購買了id為a、a、b和c的商品,且組合裝中的排列順序與此相同,則comboid是aabc。
由於商品是以組合裝形式銷售,因此經理想要找出所有暢銷的組合裝。如果有一位以上的顧客購買一款組合裝,就認為該組合裝暢銷。他想要獲得具有與此相同的商品構成的組合裝的comboid的字串列表。
輸入:
輸出:
注意:組合裝的comboid為小寫;輸出應按照comboid在輸入列表**現的順序排列。示例:
說明:comboid為「abcd」,「cdab」,「bacd」的組合裝含有相同商品;並且comboid為「zesa」和「saze」的組合裝含有相同商品。解答思路
**實現(python3)
'''
#列表輸入
input_list=
for i in range(int(input())):
print('輸入列表:',input_list)
'''#將輸入的列表排序
input_list=
['abcd'
,'zesa'
,'saze'
,'abc'
,'pqrst'
,'cdab'
,'bacd'
]sorted_list=
for s in input_list:
s_sort=
sorted
(s)''
.join(s_sort)
)print
('排序後的列表:'
,sorted_list)
#頻率統計
s_dict=
for i in sorted_list:
if i in s_dict:
s_dict[i]+=1
else
: s_dict[i]=1
print
('字串頻率統計字典:'
,s_dict)
#將符合條件的輸出
output_list=
for key,values in s_dict.items():
if values>1:
temp=
for j in
range
(len
(sorted_list)):
if sorted_list[j]
==key:
)print
('輸出列表:'
演算法整理 2015騰訊開發崗筆試題
打擂演算法 傳送門 該演算法很好地將一般需要o nlogn 時間複雜度得到的結果減少成o n 但是前提條件是出現最多的數的出現次數大於 不包括等於 集合中個數的一半。float mostelement vectorv int count 0 float m for int i 0 i 該演算法的關鍵...
vivo2023年 演算法崗筆試題
題目描述 小v在公司負責遊戲運營,今天收到款申請新上架的遊戲 跳一跳 為了確保提供給廣大玩家朋友們的遊戲都是高品質的,按照運營流程小v必須對新遊戲進行全方位了解體驗和評估。這款遊戲的規則如下 有n個盒子排成了一行,每個盒子上面有乙個數字a i 表示在該盒子上的人最多能向右移動a i 個盒子 比如當前...
網易演算法崗2018秋招兩道筆試題
1.小易立方體 每次操作從某塔上取下一塊立方體放到lingyige塔上 其中最高的塔減去最低的塔為不穩定值 輸入 n,k分別為塔數和最大操作次數 輸出 不穩定值,操作次數 每次操作的塔位置 分析 對每次操作暴力遍歷最大值和最小值 最大值 1,最小值 1 邊界條件 直至操作次數num k或者不穩定值為...