segments.cpp:2:59: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
2 | const int N=6e5;long a[N],b[N];int c[N],l,r,d[N],n,i;main(){scanf("%d", &n);for(i=1;i<=n;++i){scanf("%d",a+i);a[i]+=a[i-1];while (r-l&&a[i]-a[d[l + 1]]>=b[d[l + 1]])++l;c[i]=c[d[l]]+1;b[i]=a[i]-a[d[l]];while(b[d[r]]-b[i]>=a[i]-a[d[r]])--r;d[++r]=i;}printf("%d", c[n]);}
| ^
segments.cpp: In function 'int main()':
segments.cpp:2:103: warning: format '%d' expects argument of type 'int*', but argument 2 has type 'long int*' [-Wformat=]
2 | const int N=6e5;long a[N],b[N];int c[N],l,r,d[N],n,i;main(){scanf("%d", &n);for(i=1;i<=n;++i){scanf("%d",a+i);a[i]+=a[i-1];while (r-l&&a[i]-a[d[l + 1]]>=b[d[l + 1]])++l;c[i]=c[d[l]]+1;b[i]=a[i]-a[d[l]];while(b[d[r]]-b[i]>=a[i]-a[d[r]])--r;d[++r]=i;}printf("%d", c[n]);}
| ~^ ~~~
| | |
| | long int*
| int*
| %ld
segments.cpp:2:66: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
2 | const int N=6e5;long a[N],b[N];int c[N],l,r,d[N],n,i;main(){scanf("%d", &n);for(i=1;i<=n;++i){scanf("%d",a+i);a[i]+=a[i-1];while (r-l&&a[i]-a[d[l + 1]]>=b[d[l + 1]])++l;c[i]=c[d[l]]+1;b[i]=a[i]-a[d[l]];while(b[d[r]]-b[i]>=a[i]-a[d[r]])--r;d[++r]=i;}printf("%d", c[n]);}
| ~~~~~^~~~~~~~~~
segments.cpp:2:100: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
2 | const int N=6e5;long a[N],b[N];int c[N],l,r,d[N],n,i;main(){scanf("%d", &n);for(i=1;i<=n;++i){scanf("%d",a+i);a[i]+=a[i-1];while (r-l&&a[i]-a[d[l + 1]]>=b[d[l + 1]])++l;c[i]=c[d[l]]+1;b[i]=a[i]-a[d[l]];while(b[d[r]]-b[i]>=a[i]-a[d[r]])--r;d[++r]=i;}printf("%d", c[n]);}
| ~~~~~^~~~~~~~~~