1 条题解

  • 1
    @ 2024-5-14 16:33:15
    #include <bits/stdc++.h>
    using namespace std;
    int a[20][8];
    int r[8];
    int k;
    int b;
    int d;
    void jinzhi(int n){
        int i;
        for(i=0;i<b;i++){
            r[i] = 0;
        }
        i = 0;
        while(n!=0){
            r[i] = n % 2;
            n = n / 2;
            i++;
        }
    } 
     
    bool youhao(){
        bool f = true;
        int i,j,c;
        for(i=0;i<k;i++){
            c = 0;
            for(j=0;j<b;j++){
                if(a[i][j]!=r[j]){
                    c++;
                    if(c>=d){
                        break;
                    }
                }
            }
            if(c<d){
                f = false;
                break;
            }
        }
        return f;
    }
     
    int main(){
        int i=0,j;
        int n;
        cin>>n>>b>>d;
        k = 1;
        bool f;
        cout<<0<<" ";
        while(k<n){
            i++;
            jinzhi(i);
            f = youhao();
            if(f==true){
                for(j=0;j<b;j++){
                    a[k][j] = r[j];
                }
                cout<<i<<" ";
                k++;    
            }
        }
        return 0;
    }
    
    • 1

    信息

    ID
    529
    时间
    1000ms
    内存
    128MiB
    难度
    4
    标签
    递交数
    19
    已通过
    16
    上传者