求助入门赛F
  • 板块学术版
  • 楼主_Chronostatis_
  • 当前回复8
  • 已保存回复10
  • 发布时间2023/11/10 21:12
  • 上次更新2023/11/10 21:21:38
查看原帖
求助入门赛F
768951
_Chronostatis_楼主2023/11/10 21:12
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 2e3 + 10;

int n, m, a[MAXN][MAXN], b[MAXN][MAXN], at[MAXN][MAXN];

int main() {
  cin >> n >> m;
  for (int i = 1; i <= 2 * n; i++) {
    for (int j = 1; j <= 2 * m; j++) {
      cin >> a[i][j];
    }
  }
  for (int i = 1; i <= 2 * n; i++) {
    for (int j = 1; j <= 2 * m; j++) {
      if (j % 2) {
        a[i][j] += a[i][j + 1];
      }
    }
  }
  for (int i = 1; i <= 2 * m; i++) {
    for (int j = 1; j <= 2 * n; j++) {
      if (j % 2) {
        a[j][i] += a[j + 1][i];
      }
    }
  }
  for (int i = 1; i <= 2 * n; i++) {
    for (int j = 1; j <= 2 * m; j++) {
      if (i % 2 && j % 2) {
        b[i / 2 + 1][j / 2 + 1] = a[i][j];
      }
    }
  }
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= m; j++) {
      at[i][j] = b[j][i];
    }
  }
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= m; j++) {
      cout << at[i][j] << ' ';
    }
    cout << '\n';
  }
  return 0;
}

记录

2023/11/10 21:12
加载中...