原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=5122
思路:从最后一个开始,向前比较,维护最小值。
#include <iostream>
using namespace std;
int a[1000010];
int main(int argc, char *argv[])
{
int t;
cin >> t;
int c1 = 1;
while(t--)
{
int n;
cin >> n;
for(int i = 0;i < n;i++)
cin >> a[i];
int min = a[n-1];
int cnt = 0;
for(int i = n-1;i >= 0;i--)
{
if(min < a[i])
cnt++;
else
min = a[i];
}
cout << "Case #" << c1 << ": "<< cnt << "\n";
c1++;
}
return 0;
}