听灌多
  • 板块灌水区
  • 楼主TDSLDJ
  • 当前回复7
  • 已保存回复7
  • 发布时间2024/8/13 16:37
  • 上次更新2024/8/13 18:56:26
查看原帖
听灌多
1011384
TDSLDJ楼主2024/8/13 16:37

为什么会报错 expected ';' before 'long' 和 'mx' was not declared in this scope ?

#include<iostream>
#include<algorithm>
#include<cstring>
#define N 500005
#define int long long
using namespace std;
int t,n;
int a[N],x[N];
int fz[35],h[35];
signed main(){
	cin>>t;
	while(t--){
		memset(fz,0,sizeof(fz));
		memset(h,0,sizeof(h));
		int ans=0;
		cin>>n;
		for(int i=1;i<=n;i++){
			cin>>a[i]
			int mx=-1;
			for(int j=0;j<=30;j++)
				if(a[i]&(j*2)){
					fz[j]++;
					mx=max(mx,j);
				}
			x[i]=mx;
			h[mx]++;
		}
		for(int i=1;i<=n;i++){
			if(a[i]!=0)
				ans+=fz[x[i]]-h[x[i]];
			else
				ans+=n;
		}
		cout<<ans<<endl;
	}
	return 0;
}
2024/8/13 16:37
加载中...