Re: [闲聊] 每日leetcode

楼主: JIWP (JIWP)   2025-06-04 22:06:47
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;
}
};
作者: Firstshadow (IamCatづミ'_'ミづ)   2025-06-04 22:19:00
大师捏

Links booklink

Contact Us: admin [ a t ] ucptt.com