AtCoder Beginner Contest 361第三题我错在哪
  • 板块学术版
  • 楼主ZY_202301005129
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/7/6 22:39
  • 上次更新2024/7/7 10:21:56
查看原帖
AtCoder Beginner Contest 361第三题我错在哪
1380473
ZY_202301005129楼主2024/7/6 22:39
#include <iostream>
#include<algorithm>
using namespace std;
#define N 200010
int a[N];
int main()
{
	int n, k;cin >> n >> k;
	for (int i = 1;i <= n;i++)
		cin >> a[i];
	if (k == n)
	{
		cout << 0;
		return 0;
	}
	sort(a+1, a + n+1, greater<int>());
	
		
	int frist = 1, last = n;
	if (n == k + 1)
	{
		cout << a[last];
    }
	else
	{
while (k--)
	{
		int max2 = a[frist + 1] - a[last];
		int max3 = a[frist] - a[last - 1];
		if (max2 < max3)
		{
			frist++;
	    }
		else
		{
			last--;
		}
	}
	cout << a[frist] - a[last];
	}
	
}

绞尽脑汁也没想出来问题在哪,求解答

2024/7/6 22:39
加载中...