Re: [闲聊] 每日leetcode

楼主: oin1104 (是oin的说)   2024-11-20 22:15:49
※ 引述 《JIWP (神楽めあ的钱包)》 之铭言:
:  
: 今天是第365天写每日
:  
: 一年了 有够快
:  
: 2516. Take K of Each Character From Left and Right
:  
: 有一个长度为n的字串s是由a、b、c组成的
:  
: 每一分钟可以从最左边或是最右边拿走一个字母
:  
: 请问最少要几分钟才可以每个字母最少拿到k个?
:  
: 思路 :
:  
: 就sliding window + hash table
:  
:  
我跟jiwp宝的思路差不多
但是差在我明天要回台北了
所以连胜大概又要断了
呜呜哇哇哇哇
```cpp
class Solution {
public:
int takeCharacters(string s, int k)
{
if(k == 0)return 0;
int n = s.size();
int res = 0;
int l = 0;
vector<int> save(3,0);
for(int i = 0 ; i < n ; i ++)
{
save[s[i]-'a'] ++;
}
for(int c = 0; c < 3 ; c ++)if(save[c] < k)return -1;
for(int i = 0 ; i < n ; i ++)
{
save[s[i]-'a']

Links booklink

Contact Us: admin [ a t ] ucptt.com