Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- #define ll long long
- #define ld long double
- #define lFOR(i, a, b) for(ll i=(a); i<=(b); i++)
- #define lFORn(i, n) for(ll i=1; i<=(n); i++)
- #define lFORx(i, a, b, n) for(ll i=(a); i<=(b); i+=(x))
- #define FORa(i, b) for(i; i<=(b); i++)
- #define FORax(i, b, x) for(i; i<=(b); i+=(x))
- #define lFORR(i, a, b) for(ll i=(a); i>=(b); i--)
- #define lFORRn(i, n) for(ll i=(n); i>=1; i--)
- #define lFORRx(i, a, b, n) for(ll i=(a); i>=(b); i-=(x))
- #define FORRa(i, b) for(i; i>=(b); i--)
- #define FORRax(i, b, x) for(i; i>=(b); i-=(x))
- #define iFOR(i, a, b) for(int i=(a); i<=(b); i++)
- #define iFORn(i, n) for(int i=1; i<=(n); i++)
- #define iFORx(i, a, b, n) for(int i=(a); i<=(b); i+=(x))
- #define iFORR(i, a, b) for(int i=(a); i>=(b); i--)
- #define iFORRn(i, n) for(int i=(n); i>=1; i--)
- #define iFORRx(i, a, b, n) for(int i=(a); i>=(b); i-=(x))
- #define pb(x) push_back(x)
- #define all(x) (x).begin(), (x).end()
- #define sz(x) (x).size()
- #define sqr(x) (ll)(x)*(x)
- #define PI (2*acos(0))
- using namespace std;
- template <typename T>
- inline void Read(T& x)
- {
- bool Neg = false;
- char c;
- for (c = getchar(); c < '0' || c > '9'; c = getchar())
- if (c == '-') Neg = !Neg;
- x = c - '0';
- for (c = getchar(); c >= '0' && c <= '9'; c = getchar())
- x = x * 10 + c - '0';
- if (Neg) x = -x;
- }
- template <typename T>
- inline void Write(T x)
- {
- if (x < 0)
- {
- putchar('-'); x = -x;
- }
- T p = 1;
- for (T temp = x / 10; temp > 0; temp /= 10) p *= 10;
- for (; p > 0; x %= p, p /= 10) putchar(x / p + '0');
- }
- void update(int* n){
- *n=(*n<4)?((*n==2)?3:5):((*n-1)%6)?(*n+2):(*n+4);
- }
- bool cprm(int n){
- if(n==2||n==3) return 1;
- if(n<2||n%2==0||n%3==0) return 0;
- for(int i=5; i<=sqrt(n); update(&i)) if(n%i==0) return 0;
- return 1;
- }
- //=================declare=================
- int n, a[1000005]={}, S=0;
- //=================..end..=================
- //=================function=================
- int check(int j, int dem=0, int s=0){
- if(j==n+1){
- if(s==0) return dem;
- else return -1;
- }
- else{
- s+=a[j];
- if(s>S) return -1;
- else if(s==S) return check(j+1, dem+1);
- return check(j+1, dem, s);
- }
- }
- //=================..end...=================
- int main(){
- freopen("DIV.inp", "r", stdin);
- freopen("DIV.out", "w", stdout);
- ios_base::sync_with_stdio(0); cin.tie(0);
- //=================code=================
- Read(n);
- iFORn(i, n) cin>>a[i];
- iFORn(i, n){
- S+=a[i];
- int temp=check(i+1)+1;
- if(temp){
- Write(temp);
- return 0;
- }
- }
- //=================end.=================
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement