酷代码 AI
菜单
服务商

输入数字统计连续相等个数的 C++ 实现及开发建议

### 🍭思路分析 本题要求对于输入的 `n` 个数字,输出从每个数字开始有多少个连续相等的数。可以通过遍历数组,使用一个计数器来记录连续相等数字的个数,每当遇到不同的数字时,更新计数器并输出结果。 ### 💻代码实现 ```cpp #include <iostream> using namespace std; const int MAXN = 100; int main() { int n; int nums[MAXN]; // 读取数字的个数 cin >> n; // 读取 n 个数字 for (int i = 0; i < n; i++) { cin >> nums[i]; } for (int i = 0; i < n; i++) { int count = 1; // 计算从当前数字开始连续相等的数字个数 for (int j = i + 1; j < n; j++) { if (nums[j] == nums[i]) { count++; } else { break; } } // 输出结果 if (i > 0) { cout << " "; } cout << count; } cout << endl; return 0; } ``` ### 🔍代码解释 1. **输入读取**:首先读取数字的个数 `n`,然后读取 `n` 个数字存储在数组 `nums` 中。 2. **遍历数组**:对于数组中的每个元素,从当前元素开始向后遍历,统计连续相等数字的个数。 3. **输出结果**:输出每个元素开始连续相等数字的个数,数字之间用空格隔开。 ### 🚀复杂度分析 - **时间复杂度**:$O(n^2)$,因为对于每个元素都需要向后遍历。 - **空间复杂度**:$O(n)$,主要用于存储输入的数字。 ### 💡开发建议 - **边界条件检查**:在实际开发中,需要检查输入的 `n` 是否小于 100,避免数组越界。 - **代码优化**:可以考虑使用双指针法来优化时间复杂度,避免重复的遍历。 ######[AI写代码神器 | 521点数解答 | 2026-02-27 20:23:20]

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