P1319 压缩技术题解


题目传送门

#include 
using namespace std;
int n;  //汉字点阵的长和宽
int cnt;//当前输出到第几个
int a; //输出1还是0呢?默认是0
int x;  //每次输入的值是几个

int main() {
    cin >> n;//几行几列,本题示例是7
    //此题没明确的输入终止条件,只能是走一步看一步
    while (cnt < n * n) {
        cin >> x;
        for (int i = 1; i <= x; i++) {
            printf("%d", a);
            //数量,用于判断是否换行,另一个重要的作用是用来判断程序是否该结束了
            cnt++;
            //换行
            if (cnt % n == 0) printf("\n");
        }
        //调整为相反数,为下一次做准备
        a = !a;
    }
    return 0;
}