···魔仙堡有一片魔法路燈,編號從(1,1)-(n,m),定義左上角為(1,1),右下角為(n,m)(XD
魔法路燈的狀態用0,1表示
0代表關,1代表開
坤姐姐現在知道路燈的初始狀態
坤姐姐每次操作都能使(x1,y1)到(x2,y2)的矩陣內所有路燈狀態反轉
坤姐姐想知道q次操作之后路燈的狀態
輸入
第一行輸入一個數t,代表有t組資料
每組資料第一行兩個數字n,m,q
接下來n行,每行輸入m個數代表路燈的初始狀態
接下來q行,輸入x1,y1,x2,y2
資料范圍:1<=t<=10,1<=n,m<=400,1<=x1<=x2<=n,1<=y1<=y2<=m,1<=q<=1000
輸出
每組輸出路燈最后的狀態
樣例輸入 Copy
1
3 4 2
0 0 0 0
0 0 0 0
0 0 0 0
1 1 2 3
2 2 3 4
樣例輸出 Copy
1110
1001
0111
以下是我的代碼
#include<stdio.h>
int a[405][405];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int i,j,n,m,q,x1,y1,x2,y2;
scanf("%d %d %d",&n,&m,&q);
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
scanf("%d",&a[i][j]);
}
}
while(q--)
{
scanf("%d %d %d %d",&x1,&y1,&x2,&y2);
for(i=x1;i<=x2;i++)
{
for(j=y1;j<=y2;j++)
{
if(a[i][j]==1)
a[i][j]=0;
else if(a[i][j]==0)
a[i][j]=1;
}
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
printf("%d",a[i][j]);
}
printf("\n");
}
}
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/258849.html
標籤:C語言
上一篇:網站優化圖片alt問題
