编译器求助
  • 板块学术版
  • 楼主484A51
  • 当前回复5
  • 已保存回复5
  • 发布时间2021/8/23 09:35
  • 上次更新2023/11/4 09:24:05
查看原帖
编译器求助
180246
484A51楼主2021/8/23 09:35

这份代码,已确认没有正在运行,但总是返回1,不知道怎么回事。

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5+10;
char c[N];
int a[N];
int read();
void write(int);
signed main(){
	//freopen("socdist.in","r",stdin);
	//freopen("socdist.out","w",stdout);
	int n=read(),s=0,t=0;
	for(int i=1;i<=n;i++){
		cin>>c[i];
		if(c[i]=='0') s++;
		else{
			a[++t]=s;
			s=0;
		}
	}
	a[++t]=s;
	int x=0;
	for(int i=1;i<=t;i++){
		int m=a[i]/2;
		x=max(m,x);
	}
	cout<<x;
	return 0;
}
int read(){
    int x=0,f=1;char ch=getchar();
    while (!isdigit(ch)){if(ch=='-') f=-1;ch=getchar();}
    while (isdigit(ch)){x=x*10+ch-48;ch=getchar();}
    return x*f;
}
void write(int x){
    if(x<0){putchar('-');x=-x;}
    if(x>9) write(x/10);
    putchar(x%10+'0');
}

[Error] ld returned 1 exit status

2021/8/23 09:35
加载中...