Submission #322034

# Submission time Handle Problem Language Result Execution time Memory
322034 2020-11-13T23:51:04 Z ignaciocanta Nizin (COCI16_nizin) C++14
100 / 100
72 ms 10220 KB
#include <bits/stdc++.h>
 
using namespace std;
 
using tint = long long;
using ld = long double;
 
#define forsn(i, s, n) for(int i = s; i < int(n); i++)
#define forn(i, n) forsn(i, 0, n)
#define trav(a, x) for(auto& a : x)
 
using vi = vector<int>;
using vl = vector<tint>;
using vb = vector<bool>;
#define pb push_back
#define pf push_front
#define rsz resize
#define all(x) begin(x), end(x)
#define rall(x) x.rbegin(), x.rend() 
#define sz(x) (int)(x).size()
#define ins insert
#define esta(x,c) ((c).find(x) != (c).end())
 
using pi = pair<int,int>;
using pl = pair<tint,tint>;
#define f first
#define s second
#define mp make_pair
 
#define DBG(x) cerr << #x << " = " << x << endl;
 
const int MOD = 1e9+7;
const int mod = 998244353;
const int MX = 3e5+5; 
const tint INF = 1e18; 
const int inf = 2e9;
const ld PI = acos(ld(-1)); 
const ld eps = 1e-8;

const int dx[4] = {1, -1, 0, 0};
const int dy[4] = {0, 0, 1, -1};

template<class T> void remDup(vector<T> &v){ 
    sort(all(v)); v.erase(unique(all(v)),end(v));
}

template<class T> bool valid(T x, T y, T n, T m){
    return (0<=x && x<n && 0<=y && y<m);
}

void NACHO(string name = "cbarn"){
    ios_base::sync_with_stdio(0); cin.tie(0);
    //freopen((name+".in").c_str(), "r", stdin);
    //freopen((name+".out").c_str(), "w", stdout);
}

int main(){
	NACHO();
	int n; cin >> n;
	vl a (n);
	forn(i, n) cin >> a[i];
	int i = 0, j = n-1;
	tint sumL = a[0], sumR = a[n-1];
	tint ret = 0;
	while(i < j){
		if(sumL == sumR){
			++i; --j;
			sumL = a[i];
			sumR = a[j];
		}else if(sumL < sumR){
			++i;
			sumL+=a[i];
			++ret;
		}else{
			--j;
			sumR+=a[j];
			++ret;
		}
	}
	cout << ret << "\n";
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 0 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 876 KB Output is correct
2 Correct 8 ms 1260 KB Output is correct
3 Correct 8 ms 1260 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 24 ms 3052 KB Output is correct
2 Correct 30 ms 4588 KB Output is correct
3 Correct 37 ms 5228 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 53 ms 6252 KB Output is correct
2 Correct 57 ms 8300 KB Output is correct
3 Correct 65 ms 9196 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 69 ms 8044 KB Output is correct
2 Correct 71 ms 10220 KB Output is correct
3 Correct 72 ms 10220 KB Output is correct