关于快读
查看原帖
关于快读
558597
MujicaSaki摸鱼楼主2022/7/25 16:07

比赛时脑抽用了个快读然后就挂了只得了10分然后换成cin就100分了,所以蒟蒻想知道错哪儿了

#include<bits/stdc++.h>
using namespace std;
bool cmp(int x,int y){
	return x>y;
}
long long n,a[1000005],w,s,c,s1,ans;
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	sort(a+1,a+1+n,cmp);
	cin>>w;
	for(int i=1;i<=n;i++) if(w>=a[i]){c=a[i];break;}
	for(int i=n+1;i>=1;i--)
	{
		s1+=a[i];
		if(s1==c||s1+a[i-1]>c)
		{
			cout<<ans;
			return 0;
		}
		else ans++;
	}
	cout<<ans;
}

代码

inline char ftgetc(){
	static char s[1000000],*p=s+1000000,*pend=s+1000000;
	if (p==pend){
		p=s;
		fread(s,1,1000000,stdin);
	}
	return *p++;
}
inline int read(){
	register int n(0),c(ftgetc());
	while (48>c||c>57) c=ftgetc();
	while (48<=c&&c<=57){
		n=(n<<1)+(n<<3)+(c^48);
		c=ftgetc();
	}
	return n;
}

快读

2022/7/25 16:07
加载中...