vs可正确运行,提交30分
查看原帖
vs可正确运行,提交30分
789004
Mr_zeng楼主2022/10/31 20:07

在我的vs上可以跑,但是在洛谷上面通过不了,大佬们帮我看看

#include<iostream>
#include<cmath>
using namespace std;

void Quicksort(int price[], int left, int right)
{
	if (left < right)
	{
		int key, keypoint;
		int i = left, j = right;
		key = price[left];
		while (i<j)
		{
			while (i<j && price[j]>key)
				j--;
			if (i < j)
				price[i++] = price[j];
			while (i<j && price[i]<=key)
				i++;
			if (i < j)
				price[j--] = price[i];
		}
		
		price[i] = key;
		keypoint = i;
		Quicksort(price, left, keypoint - 1);
		Quicksort(price, keypoint + 1, right);
	}
}

int main()
{
	int topnum,giftnum;
	int lp, rp,groupnum;
	cin >> topnum >> giftnum;
	int price[30000];
	for (int i =0 ; i < giftnum; i++)
	{
		cin >>price[i];
	}
	Quicksort(price, 0, giftnum-1);
	rp = giftnum - 1;
	for (lp= 0; lp < giftnum; lp++)
	{
		while (rp > lp)
		{	
			
			if (price[lp] + price[rp] <= topnum)
			{
				price[rp] = -1;
				rp--;
				break;
			}
			else
			{
				rp--;
				continue;	
			}
		}
		if (lp >= rp)
			break;
	}
	groupnum =giftnum - lp;
	cout << groupnum;
	return 0;
}
2022/10/31 20:07
加载中...