C++ 实现魔法矩阵攻击影响模拟
以下是使用 C++ 实现该功能的代码: ```cpp #include <iostream> #include <vector> using namespace std; // 处理攻击对魔法矩阵的影响 void processAttack(vector<vector<char>>& matrix, int x, int y) { int n = matrix.size(); int m = matrix[0].size(); // 左上方 if (x - 1 >= 0 && y - 1 >= 0) { matrix[x - 1][y - 1] = '0'; } // 正上方 if (x - 1 >= 0) { matrix[x - 1][y] = '0'; } // 右上方 if (x - 1 >= 0 && y + 1 < m) { matrix[x - 1][y + 1] = '0'; } } int main() { int n, m; cin >> n >> m; vector<vector<char>> matrix(n, vector<char>(m)); // 输入矩阵 for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> matrix[i][j]; } } int x, y; cin >> x >> y; // 调整为 0 索引 x--; y--; // 处理攻击 processAttack(matrix, x, y); // 输出矩阵 for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (j > 0) { cout << " "; } cout << matrix[i][j]; } cout << endl; } return 0; } ``` ### 代码解释: 1. **`processAttack` 函数**:该函数接受一个二维字符向量 `matrix` 以及被攻击的位置 `(x, y)` 作为参数。在函数内部,会检查左上方、正上方和右上方的位置是否存在,如果存在则将这些位置的字符设置为 `'0'`。 2. **`main` 函数**: - 首先读取矩阵的行数 `n` 和列数 `m`。 - 然后读取矩阵的元素。 - 接着读取被攻击的位置 `(x, y)`,并将其调整为 0 索引。 - 调用 `processAttack` 函数处理攻击。 - 最后输出处理后的矩阵。 ######[AI问答 | 623点数解答 | 2026-05-16 16:20:36]
- C++ 实现:轻松计算两个矩阵的乘法并输出结果(字节豆包 | 381点数解答 | 2025-12-03 19:20:23)154
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)390
- 网络安全必知:CSRF 攻击揭秘与七大防御妙招! (百度文心 | 239点数解答 | 2023-11-09 18:35:43)257
- 网络安全工程师揭秘:DOS、DDoS、DRDoS攻击原理与防范策略(百度文心 | 327点数解答 | 2023-11-09 18:35:59)250
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)360
- 洛谷乒乓球题解:11 分制与 21 分制比赛结果计算全攻略(DeepSeek | 675点数解答 | 2025-04-28 18:19:45)326
- C++ 模拟:助冒险者用神秘数字构建直角三角形,开发要点大揭秘! (DeepSeek | 156点数解答 | 2025-09-14 21:30:10)337
- P1007:小核桃数组变换难题,Python代码揭秘最终平方和!(字节豆包 | 416点数解答 | 2026-02-07 18:24:18)72
- P1007小核桃数组变换难题:C++代码求解最终两数平方和! (字节豆包 | 651点数解答 | 2026-02-07 18:25:02)79
- “天气之子”试炼:用代码破解天气预报成功天数之谜,复杂度分析揭秘!(字节豆包 | 797点数解答 | 2026-02-07 18:29:12)53
- 揭秘天气之子试炼:巧用算法计算天气预报成功天数(字节豆包 | 734点数解答 | 2026-02-07 18:30:34)50
- C++实现:根据给定参数打印栅栏图案(P1015禾木与栅栏)(字节豆包 | 160点数解答 | 2026-02-07 18:36:06)56