愛奇藝18年春招程式設計題題目彙總

2021-08-19 04:43:32 字數 2726 閱讀 6452

一、牛牛學洗牌

分析 按照題目所說的,每一次把前xi張牌和剩下的牌分開,再一張一張從兩疊牌輪流放回去即可。

時間複雜度

o(n)

參考**

#include

using

namespace

std;

int a[15];

int temp[2][15];

int len[2];

int main()

}for(int i = 1; i <= 13; i++)

return0;}

二、字典序最大的子串行

分析 貪心。每次取當前剩餘字典序最大的字元。

時間複雜度

o(n)

參考**

#include

using

namespace

std;

string s;

int main()

cout

<< ss.str() << endl;

return0;}

三、彩色隊伍

分析 挨著掃一遍, 統計當前字元跟前乙個字元不同的個數。

時間複雜度

o(n)

參考**

#include

using

namespace

std;

string s;

int main()

}cout

<< cnt << endl;

return0;}

四、牛牛與玩偶

分析 根據題意,只會有兩種重量的玩偶,對於每一種重量,維護該重量的玩偶總數和最後乙個該重量玩偶的序號,最後找到數量為1的那種玩偶對應的序號就可以了。

時間複雜度

o(n)

參考**

#include

using

namespace

std;

int w[1000005];

int main() else

}if(num1 == 1)

printf("%d\n", ans1);

else

printf("%d\n", ans2);

return0;}

分析 設x為最後三個數都變為的數。

所以總共需要的操作次數為(3x - (a + b + c)) / 2。注意到x肯定大於等於a, b, c三個數的最大值, 我們現在要最小化x, 並且兩個操作都不改變a + b + c的奇偶性。

設a, b, c的最大值為ma = max(a, max(b, c))

所以3 ma與 a + b + c相同奇偶性的話, x = ma, 否則x = ma + 1。

然後輸出(3ma - (a + b + c)) / 2即可。

時間複雜度

o(1)

參考**

#include

using

namespace

std;

int main()

六、牛牛分配糖果

分析 可以通過母函式求解或者直接用揹包dp就好了。

參考**

#include

using namespace std;

long long f[2][105];

int main()

printf("%lld\n", f[n & 1][m]);

return 0;}

分析 合法的點心盒一共有三種:一甜一苦一酸/兩甜一苦(酸)/三甜。

為了最大化點心盒的數量,我們肯定是優先組成第一種點心盒,再考慮第二種點心盒,最後剩下的甜點心每三個組成乙個點心盒。

於是問題轉化為,最多能同時組成多少對一苦一酸的點心,並且每對點心都不衝突。

我們可以借助二分圖匹配的模型,考慮在任意一對個不衝突且一苦一酸的點心之間連一條邊,然後求最大匹配。

最後根據最大匹配的數量、多餘的苦(酸)點心的數量、和甜點心的數量算出答案。

時間複雜度

o(n^3)

參考**

#include

using

namespace

std;

char s[505][5];

bool ok[505][505];

int root[505];

vector

vec[505];

bool life[505];

bool solve(int x)

}return0;}

int main()

for(int i = 1; i <= n; i++)

} else

}for(int i = 1; i <= n; i++)

if(ans >= numdl)

printf("%d\n", numdl);

else

return0;}

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

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

愛奇藝19秋招程式設計題

最少的盒子 時間限制 c c 語言 1000ms 其他語言 3000ms 記憶體限制 c c 語言 131072kb 其他語言 655360kb 題目描述 bob有n個空盒子,第i個盒子是邊長為a i 的立方體,如果乙個盒子的邊長嚴格小於另乙個盒子,並且大盒子裡面沒有其他小盒子,小盒子也沒有放入其他...

愛奇藝程式設計題

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