Re: [閒聊] 每日leetcode
3403. Find the Lexicographically Largest String From the Box I
題目:
給一個字串 : word和一個整數 : numFriends
要把word分成numFriends個子字串
並且回傳按照字典序最大的子字串
思路 :
如果numFriends = 1 就直接回傳word
去找word裡面最大的字母maxChar
接著找出每個由maxChar開頭且符合條件的子字串
其中字典序最大的就是答案
C++ code :
class Solution {
public:
string answerString(string word, int numFriends)
{
if (numFriends == 1) {
return word;
}
int n = word.size();
char maxChar = 'a';
string ans = "";
for (int i = 0; i < n; i++) {
maxChar = max(maxChar, word[i]);
}
for (int i = 0; i < n; i++) {
if (word[i] == maxChar) {
int tmp = numFriends - 1 - i;
string tmpString = "";
tmpString = word.substr(i, n - i - max(0, tmp));
ans = max(ans, tmpString);
}
}
return ans;
}
};
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.121.235.241 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1749046009.A.0A6.html
→
06/04 22:19,
6月前
, 1F
06/04 22:19, 1F
討論串 (同標題文章)
完整討論串 (本文為第 1442 之 1548 篇):