玄学代码,真的不是标题党
查看原帖
玄学代码,真的不是标题党
247159
林楚颜楼主2020/11/22 13:32
#include<bits/stdc++.h>
using namespace std;
long long jl,n,m,a[70000],l,r,mid;
bool yz(int mi)
{
	int need,b,kl;
	for(int i=1;i<=n+1;i++)
	{
		if((a[i]-a[b])<mi) {need++;continue;}
		else b=i;
	}
	if(m<=need) return 0;
	return 1;
}
int main()
{
	cin>>jl>>n>>m;
	cout<<1;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	a[n+1]=jl;
	sort(a,a+n+2);
	l=0;
	r=jl;
	while(l<r)
	{
		mid=(l+r)/2;
	   if(yz(mid)==1) l=mid+1;
		else r=mid;
	}
	cout<<mid;
	return 0;
}

这段看似平凡的代码,如果在这段看似平凡的代码,连DEVC++都卡出了BUG

#include<bits/stdc++.h>
using namespace std;
//long long jl,n,m,a[70000],l,r,mid;
/*bool yz(int mi)
{
	int need,b,kl;
	for(int i=1;i<=n+1;i++)
	{
		if((a[i]-a[b])<mi) {need++;continue;}
		else b=i;
	}
	if(m<=need) return 0;
	return 1;
}*/
int main()
{
	//cin>>jl>>n>>m;
	cout<<1;
/*	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	a[n+1]=jl;
	sort(a,a+n+2);
	l=0;
	r=jl;
	while(l<r)
	{
		mid=(l+r)/2;
	  if(yz(mid)==1) l=mid+1;
		else r=mid;
		cout<<"1";
	}
	cout<<mid;*/
	return 0;
}

注释成这样(只留cout<<"1";),啥也不输出,还让我输入,在线等大佬指原因

2020/11/22 13:32
加载中...