tjut 2894

    xiaoxiao2025-02-09  18

    #include <cstdio> #include <cstdlib> #include <cstring> using namespace std; int p,d[1<<15],n; bool vis[1<<15]; void prev() { memset(vis,0,sizeof vis); p=0; } void dfs(int u) { int to1=(u<<1)&((1<<n)-1); int to2=to1+1; if(!vis[to1]) { vis[to1]=true; dfs(to1); d[++p]=0; } if(!vis[to2]) { vis[to2]=true; dfs(to2); d[++p]=1; } } void go() { dfs(0); printf("%d ",1<<n); for(int i=1;i<n;i++) printf("0"); for(int i=p;i>=n;i--) printf("%d",d[i]); printf("\n"); } int main() { while(scanf("%d",&n)!=EOF) { prev(); go(); } return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-1296267.html
    最新回复(0)