求问O2为什么会导致编译错误?
  • 板块灌水区
  • 楼主halehu
  • 当前回复8
  • 已保存回复8
  • 发布时间2022/3/21 15:36
  • 上次更新2023/10/28 06:01:05
查看原帖
求问O2为什么会导致编译错误?
365777
halehu楼主2022/3/21 15:36

rt

开O2:

#pragma GCC optimize(1)
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include<iostream>
#include<algorithm>
using namespace std;
int i,j,m,s,c,a[10005],x[10005],tmp=1,minn=1e9,maxx=-1,sum=0;
int main()
{
	cin>>m>>s>>c;
	for(i=1;i<=c;i++){
		cin>>a[i];
		minn=min(minn,a[i]);
		maxx=max(maxx,a[i]);
	}
	sort(a+1,a+c+1);
	for(i=1;i<=c-1;i++)
	    if(a[i+1]-a[i]>1)
	       x[tmp++]=a[i+1]-a[i]-1;
	for(i=1;i<tmp;i++){
		for(j=1;j<tmp;j++){
			if(x[i]>x[j]){
				int t=x[i];
				x[i]=x[j];
				x[j]=t;
			}
		}
	}
	for(i=1;i<=m-1;i++)
		sum+=x[i];
	cout<<maxx-minn+1-sum<<endl;
}

去掉最上面3行就对了

题目传送门

2022/3/21 15:36
加载中...