这样一道入门题目,本来可以用for循环直接操作,但作者异想天开(xian de dan teng)地把所有数据登记在一个数组里面,然后再统一按格式输出。也就是定义一个数组Map,大小为n成n,然后按照输入数据,把Map中每一个点改为0或者是1,然后根据题目要求的格式输出。比较简单,就直接贴代码了。
#include<stdio.h>
int main()
{int n, a, b, i, arr[50000], k = 0, j = 0;scanf("%d", &n);while (k<n*n){scanf("%d%d", &a, &b);for (j = 0; j < a; j++){arr[k] = 0;k++;}for (j = 0; j < b; j++){arr[k] = 1;k++;}}i = 0;while (i<n*n){printf("%d", arr[i]);if ((i + 1) % n == 0)printf("\n");i++;}return 0;
}