#include <stdio.h>
#include <string.h>
int main()
{
int A[20][20], B[20][20];
int ai, aj;
freopen("C:\\input.txt", "r", stdin);
while (scanf("%d%d",&ai,&aj) != EOF)
{
int i, j;
for (i = 0;i < ai;i++)
for (j = 0;j < aj;j++)
scanf("%d", &A[i][j]);
int bi, bj;
scanf("%d %d", &bi, &bj);
for (i = 0;i < bi;i++)
for (j = 0;j < bj;j++)
scanf("%d", &B[i][j]);
int x, y;
scanf("%d %d", &x, &y);
if (x > ai || y > aj)//替换位置在A外面,则输出A
{
for (i = 0;i < ai;i++)
for (j = 0;j < aj;j++)
{
if (j != aj - 1) printf("%d ", A[i][j]);
else printf("%d\n", A[i][j]);
}
}
else {
for (i = 0;i < ai;i++)
{
for (j = 0;j <aj;j++)
{
if (i >= x - 1 && i <= bi + x - 2 && j >= y - 1 && j <= bj + y - 2)
{
A[i][j] = B[i - x + 1][j - y + 1];
}
if (j != aj - 1) printf("%d ", A[i][j]);
else printf("%d\n", A[i][j]);
}
}
}
}
return 0;
}
替换矩阵的一部分
最新推荐文章于 2023-07-15 19:59:12 发布