样例全过了为什么只得50pts
查看原帖
样例全过了为什么只得50pts
1210460
封禁用户楼主2024/11/24 09:41
#include<bits/stdc++.h>
#define int long long 
using namespace std;
signed main() {
	int t;
	cin>>t;
	while(t--) {
		int n,m,sum=0,k=0,num=0;
		cin>>n>>m;
		int a[n];
		for(int i=0;i<n;i++) cin>>a[i];
		if(m==0) {
			for(int i=0;i<n;i++) 
				if(a[i]>k) k=a[i],num=i;
			for(int i=0;i<num;i++) sum+=a[i];
			cout<<sum+a[num]*(n-num)<<endl;
			continue;
		}else if(n!=2) {
			for(int i=0;i<n;i++) k=max(k,a[i]);
			cout<<k*n<<endl;
			continue;
		}else if(n==2) {
			if(m%2==1&&a[0]<=a[1]) cout<<a[1]+a[1]<<endl;
			if(m%2==1&&a[0]>a[1]) cout<<a[0]+a[1]<<endl;
			if(m%2==0&&a[0]<=a[1]) cout<<a[0]+a[1]<<endl;
			if(m%2==0&&a[0]>a[1]) cout<<a[1]+a[1]<<endl;
			continue;
		}
	}
	return 0;
} 

请大佬帮我看看有什么问题?

2024/11/24 09:41
加载中...