求助

P1319 压缩技术

darling020162021 @ 2024-10-17 10:50:15

#include<bits/stdc++.h>
using namespace std; 
const int MAXN=205*205;
int a[MAXN],pi[MAXN];
int main(){
    int n,sum,i,num;
    sum=0;
    num=0;
    cin>>n;
    for(i=0;sum!=n*n;i++){//将压缩码存入数组且记录i 
        cin>>a[i];
        sum+=a[i];
    }
    for(int j=0;j<i;j++){//将a[i]开始变成0/1 
        for(int k=0;k<a[j];k++){
            if(j%2==1){//a[奇数]为1 
                pi[num]=1;
            }else{//a[偶数]为0 
                pi[num]=0;  
            }
            num++;
        }
    }
    for(int k=0;k<n;k++){//输出01 
        for(int j=0;j<n;j++){
        cout<<pi[j];
        }
        cout<<endl;
    }
    return 0;
}

我不知道我哪里错了呀呀呀呀


by 未泯 @ 2024-10-17 11:05:55

输出的时候,对应的下标不应该是 j。 也许是 kn+j


|