愛奇藝2018秋季校招演算法工程師(第一場)

2021-09-09 02:41:16 字數 2472 閱讀 8519

乙個合法的括號匹配序列有以下定義:

1、空串""是乙個合法的括號匹配序列

2、如果"x"和"y"都是合法的括號匹配序列,"xy"也是乙個合法的括號匹配序列

3、如果"x"是乙個合法的括號匹配序列,那麼"(x)"也是乙個合法的括號匹配序列

4、每個合法的括號序列都可以由以上規則生成。

例如: "","()","()()","((()))"都是合法的括號序列

對於乙個合法的括號序列我們又有以下定義它的深度:

1、空串""的深度是0

2、如果字串"x"的深度是x,字串"y"的深度是y,那麼字串"xy"的深度為max(x,y) 3、如果"x"的深度是x,那麼字串"(x)"的深度是x+1

例如: "()()()"的深度是1,"((()))"的深度是3。牛牛現在給你乙個合法的括號序列,需要你計算出其深度。

輸入描述:

輸入包括乙個合法的括號序列s,s長度length(2 ≤ length ≤ 50),序列中只包含'('和')'。

輸出描述:

輸出乙個正整數,即這個序列的深度。

示例1輸入

(())輸出2

#includeusing namespace std;

#include #include //測試用例:

//( (()) () ) ( ( (()) (()) )() )

////對應輸出應該為 :

//// 4

//// 你的輸出為 :

//// 7

int main() //60%

if (str[i]=='(')

else

result_depth = (result_depth>depth) ? result_depth : depth;

}cout << result_depth << endl;

return 0;

}- 認真想其實思路很簡單

int main()

else

result_depth = (result_depth > depth) ? result_depth : depth;

}cout << result_depth << endl;

return 0;

}

牛牛養了n只奶牛,牛牛想給每只奶牛編號,這樣就可以輕而易舉地分辨它們了。 每個奶牛對於數字都有自己的喜好,第i只奶牛想要乙個1和x[i]之間的整數(其中包含1和x[i])。

牛牛需要滿足所有奶牛的喜好,請幫助牛牛計算牛牛有多少種給奶牛編號的方法,輸出符合要求的編號方法總數。

輸入描述:

輸入包括兩行,第一行乙個整數n(1 ≤ n ≤ 50),表示奶牛的數量 第二行為n個整數x[i](1 ≤ x[i] ≤ 1000)

輸出描述:

輸出乙個整數,表示牛牛在滿足所有奶牛的喜好上編號的方法數。因為答案可能很大,輸出方法數對1,000,000,007的模。

示例1輸入

44 4 4 4

輸出24

如果乙個字串s是由兩個字串t連線而成,即s = t + t, 我們就稱s叫做平方串,例如"","aabaab","***x"都是平方串.

牛牛現在有乙個字串s,請你幫助牛牛從s中移除盡量少的字元,讓剩下的字串是乙個平方串。換句話說,就是找出s的最長子序列並且這個子串行構成乙個平方串。

輸入描述:

輸入乙個字串s,字串長度length(1 ≤ length ≤ 50),字串只包括小寫字元。

輸出描述:

輸出乙個正整數,即滿足要求的平方串的長度。

示例1輸入

frankfurt輸出4

//平方串

#includeusing namespace std;

#include #define max(a,b) (((a) > (b)) ? (a) : (b))

//測試用例:

//fjkjsakljflkjakljjfiwo**fioq wfoiqwjfiojq

////對應輸出應該為 :

////16

////你的輸出為 :

//// 18

int findmaxcom(string a_, string b_)

; int ret = 0;

for (int i = 1; i <= a_.size();i++)

else

//ret = (ret > dp[i][j]) ? ret : dp[i][j];}}

ret=dp[a_.size()][b_.size()];

return ret;

}int main()

int ret = 0;

string a,b;

for (int i = 0; i < str.size(); i++)

cout << ret * 2 << endl;

return 0;

}

愛奇藝2018秋季校招演算法工程師(第一場)程式設計題

第一題 乙個合法的括號匹配序列有以下定義 1 空串 是乙個合法的括號匹配序列 2 如果 x 和 y 都是合法的括號匹配序列,xy 也是乙個合法的括號匹配序列 3 如果 x 是乙個合法的括號匹配序列,那麼 x 也是乙個合法的括號匹配序列 4 每個合法的括號序列都可以由以上規則生成。例如 都是合法的括號...

愛奇藝2023年23道校招真題

第1道 小易喜歡的數列 include includeusing namespace std const int maxn 1e5 5 const int mod 1000000007 define ll long long int ll map 11 maxn int main for int i...

愛奇藝2018演算法工程師筆試

如果乙個字串s是由兩個字串t連線而成,即s t t,我們就稱s叫做平方串,例如 aabaab x 都是平方串.牛牛現在有乙個字串s,請你幫助牛牛從s中移除盡量少的字元,讓剩下的字串是乙個平方串。換句話說,就是找出s的最長子序列並且這個子串行構成乙個平方串。輸入描述 輸入乙個字串s,字串長度lengt...