bcoi系列目录直达


太好了又是鱼,我们有救了!!!

哈哈为数不多有关于的题目了

以下是题目描述,也可点击此处直接跳转原题

速览题目


【入门】Fish学数学

说明

花了一个多月的时间,Fish终于学会了比较两个数的大小。他想检测下自己是否已经真的学会了,找来了Bug考考他。Bug马上写出了n个数,要Fish数出每个数后面比他小的数的总个数,Fish马上开始数了起来。Bug自己也在旁边算,可他发现自己也还不太清楚,但又不想在Fish面前丢脸,所以来求助你,希望你能够在Fish面前算出标准答案。

输入格式

第一行为数n(n<=20000);

接下来n行每行一个数ai(ai<=1000000)。

输出格式

一个数,每个数后面比他小的总个数。

样例

输入数据 1

3
3
2
1

输出数据 1

3

提示

比如:3个数3 2 1,那么3后面比它小的数有2个,2后面比它小的数有1个,每个数后面比它小的数共有3个!

再比如:3个数1 3 2,那么1后面比它小的数有0个,3后面比它小的数有1个,每个数后面比它小的数共有1个!


解题

这题要求是比较出每个数后面比他小的总个数。

遍历就行了,找最大 (max)(max) 的就行。

以下是参考代码

#include<bits/stdc++.h>
int a[20005],n,ans=0;
using namespace std;
int main(){
    cin>>n;
    for(int i=0;i<n;i++) cin>>a[i];
    for(int i=0;i<n;i++)
        for(int j=i+1;j<n;j++)
            if(a[j]<a[i]) ans++;
    cout<<ans;
    return 0;
}

代码解析

为数不多简单题目(水题)

小白也看得懂

if(a[j]<a[i]) ans++;//计算每个数后面比他小的总个数

完工!!!