携程——前端笔试(2022.4.14)
題目
1.畫一個大小為n的U
2.數組染色
3.01串變間隔串
4.字符串子序列是9的倍數
1.畫一個大小為n的U
游游想讓你畫一個大小為n的"U",你能幫幫她,具體的畫法見樣例說明。
輸入描述:一個正整數n。1≤n≤50
輸出描述:共輸出4n行,每行輸出一個長度為4n的,僅包含'*’和'.'兩種字符的字符串。
2.數組染色
游游拿到了一個數組,其中一些數被染成紅色,一些數被染成藍色。游游想知道,取兩個不同顏色的數,且它們的數值相等,有多少種不同的取法? 我們定義,兩種取法如果取的某個數在原數組的位置不同,則定義為不同的取法。
輸入描述:
第一行輸入一個正整數n,代表數組的長度。
第二行輸入n個正整數ai,代表數組中的元素。
第三行輸入一個長度為n,僅包含'R'?和'B'?兩種字符的字符串,第i個字符為'B'代表數組第i個元素被染成紅色,為'B'代表被染成藍色。1≤n≤200000, 1≤a≤10$^9$
輸出描述:
輸出一個整數,代表取數的方案數量。
3.01串變間隔串
游游拿到了一個01串(僅由字符'0'和字符'1'構成的字符串)。游游每次操作可以交換兩個相鄰的字符,例如,對于字符串"11001"而言,游游可以交換第二個字符和第三個字符變成”10101"。游游希望最終字符串任意兩個相鄰的字符都不相同,她想知道最少需要多少操作次數?保證答案是有解的,即最終一定能形成任意兩個相鄰的字符都不相同的字符串。
輸入描述:
一行僅由'0’?、'1'?組成的字符串,字符串長度n滿足 2≤n?<?200000.
輸出描述:
游游使得相鄰兩個字母不等的最少操作次數。
4.字符串子序列是9的倍數
游游拿到了一個數字串,她想取一個該數字串的子列(子序列在原串中可以不連續)?,使得該子序列是9的倍數。子列可以包含前導零。游游想知道,一共能取多少個合法的子序列?答案請對10$^9$ +?7取模。我們定義,若兩個子序列在原串中的位置不同,則認為它們不同。
輸入描述:一個長度不超過200000的,?僅由'0'~'9'?十種字符組成的字符串。
輸出描述:子序列是9的倍數的數量。答案請對10$^9$+7取模。
總結
以上是生活随笔為你收集整理的携程——前端笔试(2022.4.14)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 清爽大气自适应小说模板帝国cms7.5内
- 下一篇: Shell-cut命令的使用