洛谷50分代码官方0分求助啊~~~

回复帖子

@Andy_boy 2019-12-02 23:32 回复
#include<bits/stdc++.h>
using namespace std;
int cnta,cntb;
int n,k;
int azt,bzt;
char a[10000000][70];
char b[10000000][70];
int main() {
    freopen("code.in","r",stdin);
    freopen("code.out","w",stdout);
    scanf("%d%d",&n,&k);
    a[0][0]='0';
    a[1][0]='1';
    azt=1;
    bzt=0;
    cnta=2;
    if(n==1) {
        printf("%c",a[k][0]);
    } else {
        for(int i=2; i<=n; ++i) {
            if(azt==1&&bzt==0) {
                cntb=0;
                for(int j=0; j<=cnta-1; ++j) {
                    cntb++;
                    b[cntb-1][0]='0';
                    for(int k=1; k<i; ++k) {
                        b[cntb-1][k]=a[j][k-1];
                    }
                }
                for(int j=cnta-1; j>=0; j--) {
                    cntb++;
                    b[cntb-1][0]='1';
                    for(int k=1; k<i; ++k) {
                        b[cntb-1][k]=a[j][k-1];
                    }
                }
                azt=0;
                bzt=1;
            } else {
                cnta=0;
                for(int j=0; j<=cntb-1; ++j) {
                    cnta++;
                    a[cnta-1][0]='0';
                    for(int k=1; k<i; ++k) {
                        a[cnta-1][k]=b[j][k-1];
                    }
                }
                for(int j=cntb-1; j>=0; j--) {
                    cnta++;
                    a[cnta-1][0]='1';
                    for(int k=1; k<i; ++k) {
                        a[cnta-1][k]=b[j][k-1];
                    }
                }
                azt=1;
                bzt=0;
            }
        }
        if(azt==0&&bzt==1) {
            for(int i=0; i<n; ++i) {
                printf("%c",b[k][i]);
            }
        }
        if(azt==1&&bzt==0) {
            for(int i=0; i<n; ++i) {
                printf("%c",a[k][i]);
            }
        }
    }
    return 0;
}
反馈
如果你认为某个帖子有问题,欢迎向洛谷反馈,以帮助更多的同学。



请具体说明理由,以增加反馈的可信度。