提交时间:2022-07-20 12:31:41

运行 ID: 52975

#include<bits/stdc++.h> using namespace std; const int maxn = 25; int n; int num[maxn], loca[maxn]; bool flg; double ans = 0, a, b; void swp(){ for(int i = 1; i <= n; i++){ if(i != loca[i]){ swap(loca[loca[i]], loca[i]); ans += a; } } return; } int main(){ cin >> n >> a >> b; for(int i = 1; i <= n; i++){ cin >> num[i]; loca[num[i]] = i; if(num[i] < num[i - 1]){ flg = true; } } if(!flg){ printf("%.9lf", ans); return 0; } swp(); printf("%.9lf", ans); return 0; }