60弱鸡求助,大佬最好用c语言版本的解释,不然孩子可能看不懂
查看原帖
60弱鸡求助,大佬最好用c语言版本的解释,不然孩子可能看不懂
789613
HJRBill楼主2022/10/23 20:07

wa了五个点:Subtask #0的3,4,7,11和Subtask #1的1

#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
int q[500010] = { 0 };
bool check(int n, int m, int x)
{
	int i = 0, num = 0, now = 0;
	for (i = 0; i < n + 1; ++i)
	{
		if (q[i] - q[now] < x)num++;
		else now = i;
		if (num > m)break;
	}
	if (num > m)return 0;
	else return 1;
}
int main()
{
	int s = 0, n = 0, m = 0, i = 0, res = 0;
	scanf("%d %d %d", &s, &n, &m);
	for (i = 0; i < n; i++)
	{
		scanf("%d", &q[i]);
	}
	q[n] = s;
	int l = 0, r = s;
	while (l < r)
	{
		int mid = l + r + 1 >> 1;
		if (check(n, m, mid))l = mid;
		else r = mid - 1;
	}
	printf("%d", l);
	return 0;
}
2022/10/23 20:07
加载中...