This commit is contained in:
estomm
2021-08-24 00:02:03 +08:00
parent e39bb6637f
commit deb3a28608

53
a.cpp
View File

@@ -3,19 +3,50 @@
using namespace std;
int main(){
vector<int> arr{-1, 3, -3, 4,5};
vector<int> temp(arr.size()+1,0);
for(int i=0;i<arr.size();i++){
if(arr[i]<arr.size()+1 && arr[i]>0){
temp[arr[i]]=1;
int compress(vector<char>& chars) {
vector<char> vec;
vector<int> num;
char lc=chars[0];
int ln=1;
int j=0;
for(int i=1;i<chars.size();i++){
if(chars[i]==lc){
ln++;
}
else{
vec[j]=lc;
num[j]=ln;
j++;
lc=chars[i];
ln=1;
}
}
int i;
for(i=1;i<temp.size();i++){
if(temp[i]==0)break;
vec[j]=lc;
num[j]=ln;
vector<char> &res=chars;
res.clear();
for(int i=0;i<vec.size();i++){
res.push_back(vec[i]);
if(num[i]==1)continue;
if(num[i]>0){
char temp = char(num[i]%10-0+'0');
res.push_back(temp);
num[i]/=10;
}
}
cout<<i<<endl;
return res.size();
}
return 0;
int main(){
vector<char> chars={'a','a','b'};
for(auto a:chars){
cout<<a<<endl;
}
compress(chars);
for(auto a:chars){
cout<<a;
}
cout<<endl;
return 0;
}