Description
今天独立团团长教战士们抹发胶(每个人抹的发胶都有一个发胶值)。大家排成一行,从左到右依次排开,他们只能看到自己左边的人,大家都是两个肩膀扛一个脑袋的,谁也不服谁,于是他们都想知道自己左边到底有多少人的发胶值不如自己。如果不如自己的人越多,他们就越高兴,因为这样他们的发型就越不会乱啦。 现在想问问你,如果每个人都看向左边,有多少人的发胶值小于自己呢?(任意两个人的发胶值可能一样)
Input
首先输入T (T<=10),表示有T组数据;每组数据输入人数N(N<=100)和每个人的发胶值ai(0<ai<1000)。
Output
每组输出n个数字,第i个输出的数字表示第i个人左边有多少人的发胶值小于自己。 数字之间用一个空格隔开,注意最后一个数字之后不要输出多余的空格。
Analysis
暴力水题,没敲错代码或者看错题即可顺利AC
Accepted Code
/*
* @Author: Gehrychiang
* @LastEditors: Gehrychiang
* @Website: www.yilantingfeng.site
* @E-mail: gehrychiang@aliyun.com
*/
#include <bits/stdc++.h>
using namespace std;
int a[105];
int ans[105];
int main()
{
int t;
while (cin >> t)
{
while (t--)
{
int n;
cin >> n;
memset(a, 0, sizeof(a));
memset(ans, 0, sizeof(ans));
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
ans[0] = 0;
for (int x = 1; x < n; x++)
{
for (int y = 0; y < x; y++)
{
if (a[y] < a[x])
ans[x]++;
}
}
for (int i = 0; i < n; i++)
{
cout << ans[i];
if (i != n - 1)
cout << " ";
else if (i == n - 1)
cout << endl;
}
}
}
return 0;
}

