思路
小常识:string有加法,给定一个新的字符串和旧的字符串,旧字符串每一位替换加到新字符串,递归n次答案就出来了。
代码
#include<bits/stdc++.h>
using namespace std;
int n;
void fc(string str,int cnt){
if(cnt==n){
cout<<str<<endl;
return;
}
string tmp="";
for(int i=0;i<str.length();i++){
if(str[i]=='0') tmp=tmp+"1";
if(str[i]=='1') tmp=tmp+"01";
}
fc(tmp,cnt+1);
}
int main(){
scanf("%d",&n);
string s="0";
fc(s,0);
return 0;
} 
京公网安备 11010502036488号