代码随想录day8字符串1

344.反转字符串

题目链接
文章讲解

AC

class Solution {
public:
    void reverseString(vector<char>& s) {
        int mid=s.size()/2;
        for(int i=0,j=s.size()-1;i<mid;i++)
        {
            char c=s[j];
            s[j]=s[i];
            s[i]=c;
            j--;
        }
    }
};

541. 反转字符串II

题目链接
文章讲解

AC

class Solution {
public:
    string reverseStr(string s, int k) {
        int n=s.size();
        for (int i = 0; i < s.size(); i+=2*k) {
            int p=min(i+k,n);
            reverse(s.begin()+i,s.begin()+p);
        }
           
        return s;
    }
};

替换数字

题目链接
文章讲解

AC

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include
#include 
#include 
#include
#include 
#include
#include
#include 
#include
#include
using namespace std;

typedef long long ll;
#define pr pair<double,int>
#define tp tuple<int,int,int>
const int N = 2e6 + 7;
const int mod = 998244353;
ll a[N],s[N];
ll n, m, k;
ll e[N];
ll ne[N];
ll head,idx;

void solve()
{
   string s;
   cin>>s;
   string x="number";
   string ans="";
   for(int i=0;i<s.size();i++)
   {
    if(isdigit(s[i]))
        {
            ans+=x;
        }
        else ans+=s[i];
   }
   cout<<ans;
}

 int main()
{
    cin.tie(0); 
    cout.tie(0);
    ios::sync_with_stdio(false);//提高cin、cout的输入输出效率
    solve();
}

你可能感兴趣的:(算法,数据结构)