Pagini recente » Cod sursa (job #735804) | Cod sursa (job #1962666) | Cod sursa (job #2676443) | Cod sursa (job #94667) | Cod sursa (job #592992)
Cod sursa(job #592992)
#include <iostream>
#include <fstream>
using namespace std;
long N, Nr[2], S, NSecv[500005];
char Sir[200005];
void Read ()
{
ifstream fin ("fsb.in");
long i;
char n;
fin >> N;
for (i=0; i<N; i++)
{
fin >> n;
if (n=='0')
{
Sir[i]=0;
}
else
{
Sir[i]=1;
}
}
fin.close ();
}
void Type ()
{
ofstream fout ("fsb.out");
fout << S << "\n";
fout.close ();
}
inline long Modul (long a)
{
if (a>=0)
{
return a;
}
return -a;
}
int main ()
{
long i;
Read ();
NSecv[200005]=1;
for (i=0; i<N; i++)
{
Nr[(int)Sir[i]]++;
S+=NSecv[200005+Nr[1]-Nr[0]];
NSecv[200005+Nr[1]-Nr[0]]++;
}
Type ();
return 0;
}