酷代码 AI
菜单
服务商

人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。 输入格式 第一行输入一个正整数 n n,表示鱼的数目。 第二行内输入 n n 个正整数,用空格间隔,依次表示从左到右每只小鱼的可爱程度 a i a i ​ 。 输出格式 一行,输出 n n 个整数,用空格间隔,依次表示每只小鱼眼中有多少只鱼不如自己可爱。(c++,初学者)

以下是使用 C++ 解决该问题的代码: ```cpp #include <iostream> using namespace std; int main() { int n; // 输入鱼的数目 cin >> n; int a[1000]; // 输入每只鱼的可爱程度 for (int i = 0; i < n; i++) { cin >> a[i]; } // 遍历每只鱼 for (int i = 0; i < n; i++) { int count = 0; // 统计在当前鱼左边有多少只鱼不如自己可爱 for (int j = 0; j < i; j++) { if (a[j] < a[i]) { count++; } } // 输出结果 if (i > 0) { cout << " "; } cout << count; } cout << endl; return 0; } ``` 代码解释: 1. 输入鱼的数目:使用 `cin` 读取一个正整数 `n`,表示鱼的数目。 2. 输入每只鱼的可爱程度:使用一个数组 `a` 来存储每只鱼的可爱程度。通过一个 `for` 循环,依次读取 `n` 个正整数,并存储到数组 `a` 中。 3. 统计每只鱼眼中不如自己可爱的鱼的数量: - 外层 `for` 循环遍历每只鱼。 - 对于每只鱼,使用内层 `for` 循环遍历其左边的所有鱼。 - 如果左边的鱼的可爱程度小于当前鱼的可爱程度,则计数器 `count` 加 1。 4. 输出结果: - 在外层 `for` 循环中,输出每只鱼眼中不如自己可爱的鱼的数量。 - 为了保证输出格式正确,除了第一只鱼外,其他鱼的输出结果前都要输出一个空格。 复杂度分析: - 时间复杂度:代码中有两层嵌套的 `for` 循环,因此时间复杂度为 $O(n^2)$,其中 $n$ 是鱼的数目。 - 空间复杂度:代码中使用了一个长度为 $n$ 的数组来存储每只鱼的可爱程度,因此空间复杂度为 $O(n)$。 [2026-02-07 18:59:03 | AI问答 | 553点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多