#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
string s="aaabbbbccccc";
int ans=0;
vector<string>v1;
do{
int i;
for( i=0;i<v1.size();i++) ///排除重复,对v1中的每个元素进行检查,如果存在s的旋转或者翻转,则跳过
{
if(v1[i].find(s)!=string::npos)
{
break;
}
}
if(i!=v1.size()) ///s不可用的情况
{
continue;
}
string s2=s+s;
v1.push_back(s2); ///用于判断旋转的情况
reverse(s2.begin(),s2.end());
v1.push_back(s2); ///将s的翻转放入v1中
ans++;
}while(next_permutation(s.begin(),s.end()));
printf("%d\n",ans);
return 0;
}
[蓝桥杯2015初赛]手链样式
最新推荐文章于 2022-04-05 15:59:44 发布