求教lower_bound
  • 板块灌水区
  • 楼主Cr_ft
  • 当前回复19
  • 已保存回复19
  • 发布时间2023/4/5 21:57
  • 上次更新2023/10/23 19:18:24
查看原帖
求教lower_bound
681616
Cr_ft楼主2023/4/5 21:57
using namespace std;
int m;
long long s[2000005];
int main(){
	scanf("%d",&m);
	for(int i=1;i<=m;++i){
   		s[i]=s[i-1]+i;
	}
	for(int i=1;i<=m;++i){
		int j=lower_bound(s+1,s+1+m,s[i-1]+m)-s;
		if(s[j]-s[i-1]!=m||j-i+1<2) continue;
		else printf("%d %d\n",i,j); 
	}
	return 0;
}

int j=lower_bound(s+1,s+1+m,s[i-1]+m)-s;

后面为什么要-s啊

蒟蒻诚心求助orz

题号:P1147

2023/4/5 21:57
加载中...