思路原地变化,C++直接调用函数进行
左右交换,向中间移动sawp()c++用于交换俩元素的方法
为什么这个代码不能交换
解释:
由上一题可以知道我们反转字符串可以原地反转,就可以在区间内反转数组
思路 : 运到相应的字母就替换即可
/*
* 12/20/tm /诸天神佛,佑我上分
*/
#include
using namespace std;
#define mp make_pair
#define pb push_back
#define PII pair
#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
void rd(Args&... args) {
std::initializer_list{(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='1'&&s[i]<='9'){
s.replace(i,1,"number");
}
}
std::cout<>_; while(_--) solve();
#else
solve();
#endif
}
// Fenwick tree
int t[N];
void add(int x,int v){for(;x>=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]);}
如果此文对你有帮助的话,欢迎关注、点赞、⭐收藏、✍️评论,支持一下博主~