0
已解决
刘意阳
初级天翼
初级天翼
#include <iostream>
#include <algorithm>
#define M 1000+5
using namespace std;
int n,m,s,a[M];
long long ans1,ans2;
bool cmp(int x,int y){
return x>y;
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
cin>>a[i];
}
sort(a+1,a+m+1,cmp);
for(int i=1;i<=m;i++){
if((m-i+1)*a[i]>ans2){
ans1=a[i];
ans2=(m-i+1)*a[i];
}
}
cout<<ans1<<' '<<ans2;
return 0;
}
哪位大神可以解释一下为啥WA80?
刘意阳在2022-11-19 16:26:00追加了内容
#include <iostream>
#include <algorithm>
#define M 1000+5
using namespace std;
int n,m,s,a[M],cnt;
long long ans1,ans2;
bool cmp(int x,int y){
return x>y;
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
cin>>a[i];
}
sort(a+1,a+m+1,cmp);
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
if(a[j]>a[i]){
cnt++;
}
}
if(min(cnt,n)*a[i]>ans2){
ans1=a[i];
ans2=min(cnt,n)*a[i];
}
}
cout<<ans1<<' '<<ans2;
return 0;
}
@张世贤 ,为什么WA0???
0
0
0
张世贤
中级守护
中级守护
好好读题,人家说只有n批木材,你当他是空气呢?(虽然我也是这样错的...)
而且,如果有出价一样的,你输出每次的(m-i+1)*a[i] 就会有错的,但没什么影响(我一开始也没注意到...)
0