思路原地变化,C++直接调用函数进行
?左右交换,向中间移动sawp()c++用于交换俩元素的方法
?为什么这个代码不能交换
解释:?
?
由上一题可以知道我们反转字符串可以原地反转,就可以在区间内反转数组
?思路 : 运到相应的字母就替换即可
/*
* 12/20/tm /诸天神佛,佑我上分
*/
#include<bits/stdc++.h>
using namespace std;
#define mp make_pair
#define pb push_back
#define PII pair<int,int>
#define ll long long
#define multicase 0
#define N 500005
#define mod 998244353
int a[N], b[N];
void read(int&x) {
x=0; char ch=getchar(); int f=1;
while(!isdigit(ch)) f=ch=='-'?-1:1, ch=getchar();
while(isdigit(ch)) x=x*10+ch-48, ch=getchar();
x=f*x;
}
void read(ll&x) {
x=0; char ch=getchar(); int f=1;
while(!isdigit(ch)) f=ch=='-'?-1:1, ch=getchar();
while(isdigit(ch)) x=x*10+ch-48, ch=getchar();
x=f*x;
}
template<typename... Args>
void rd(Args&... args) {
std::initializer_list<int>{(read(args), 0)...};
}
void init() {
// M.reserve(1024); M.max_load_factor(0.25);
}
void solve() {
string s; cin>>s;
for(int i=0;i<s.size();i++){
if(s[i]>='1'&&s[i]<='9'){
s.replace(i,1,"number");
}
}
std::cout<<s;
}
int main() {
init();
#if multicase
int _; cin>>_; while(_--) solve();
#else
solve();
#endif
}
// Fenwick tree
int t[N];
void add(int x,int v){for(;x<N;x+=x&-x)t[x]+=v;}
int ask(int x,int a=0){for(;x;x^=x&-x)a+=t[x]; return a;}
// Math
int gcd(int a,int b){return b?gcd(b,a%b):a;}
ll qp(ll b,int t,ll a=1){for(;t;t>>=1,b=b*b%mod)if(t&1)a=a*b%mod; return a;}
int inv(ll x){return qp(x,mod-2);}
// Joint Set
int f[N];
int find(int x){return f[x]==x?x:f[x]=find(f[x]);}
🔥如果此文对你有帮助的话,欢迎💗关注、👍点赞、?收藏、??评论,支持一下博主~