酷代码 AI
菜单
服务商

C++ 实现计算剩余完好树木数量的算法

以下是用 C++ 实现计算剩余完好无损树木棵数的代码: ```cpp #include <iostream> #include <vector> using namespace std; int main() { int n, m; // 输入树的总数 n 和区域数 m cin >> n >> m; // 创建一个长度为 n+1 的布尔型向量,用于标记每棵树是否被摧毁 vector<bool> destroyed(n + 1, false); for (int i = 0; i < m; i++) { int L, R; // 输入每个区域的范围 cin >> L >> R; // 标记该区域内的树为已摧毁 for (int j = L; j <= R; j++) { destroyed[j] = true; } } int remaining = 0; // 遍历所有树,统计未被摧毁的树的数量 for (int i = 1; i <= n; i++) { if (!destroyed[i]) { remaining++; } } // 输出剩余完好无损的树木棵数 cout << remaining << endl; return 0; } ``` ### 代码解释: 1. **输入处理**:首先读取树的总数 `n` 和区域数 `m`,然后创建一个长度为 `n + 1` 的布尔型向量 `destroyed`,用于标记每棵树是否被摧毁。 2. **区域处理**:对于每个区域 `[L, R]`,将该区域内的树标记为已摧毁。 3. **统计剩余树木**:遍历所有树,统计未被摧毁的树的数量。 4. **输出结果**:输出剩余完好无损的树木棵数。 ######[AI问答 | 422点数解答 | 2026-03-13 19:45:39]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]