Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
52798 AK2022071333 敏捷排列 C++ 解答错误 40 0 MS 252 KB 774 2022-07-20 11:58:32

Tests(4/10):


#include <bits/stdc++.h> using namespace std; inline int read() { int x=0; char c=getchar(); for(; c<'0' || c>'9'; c=getchar()); for(; c<='9' && c>='0'; c=getchar()) x=(x<<3)+(x<<1)+c-'0'; return x; } int main() { int n,a,b; n=read(),a=read(),b=read(); int an[n+1]; for(int i=1; i<=n; i++) { an[i]=read(); } double ans1= 1; for(int i=2; i<=n; i++) { ans1*=i; } ans1*=b; double ans2=0; for(int i=1; i<=n; i++) { int min=an[i],minn=i; for(int j=i+1; j<=n; j++) { if(an[j]<min) { min=an[j]; minn=j; } } if(an[i]>min) { swap(an[i],an[minn]); ans2+=a; } } printf("%.9lf",min(ans1,ans2)); return 0; }


测评信息: