思路疑问
查看原帖
思路疑问
820707
Do_www楼主2024/4/5 00:19

这题我维护一个最小值为什么不行啊?

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 10005;
int a[N], cnt;
int main()
{
    int n;
    cin >> n;
    for(int i = 1; i <= n; i ++) cin >> a[i];
    
    for(int i = 1; i <= n; i ++)
    {
        int min_v = -1;
        for(int j = i + 1; j <= n; j ++)
       {
           if(a[j] < a[i]) min_v = j;
       }
       if(min_v != -1)
       {
           swap(a[min_v], a[i]);
           cnt ++;
       }
    }
    cout << cnt << endl;
}
2024/4/5 00:19
加载中...