专栏文章
题解:AT_past202004_d パターンマッチ
AT_past202004_d题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @minp4er4
- 此快照首次捕获于
- 2025/12/02 06:03 3 个月前
- 此快照最后确认于
- 2025/12/02 06:03 3 个月前
思路:
可以看出,题目中要求的字符串必定是原字符串的子串将任意个字符替换成点构成的,所以我们可以枚举原字符串的子串并递推枚举替换点的情况。
代码:
CPP#include <bits/stdc++.h>
using namespace std;
string s;
set<string> c;
int cnt=0;
void add(string x,int n){
int l=x.size();
if(n==l){
c.insert(x);
return;
}
add(x,n+1);
x[n]='.';
add(x,n+1);
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin>>s;
int n=s.size();
for(int k=1;k<=3;k++){
for(int i=0;i<=n-k;i++){
c.insert(s.substr(i,k));
}
}
for(auto i:c){
add(i,0);
}
cout<<c.size();
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...