Cod sursa(job #2853979)

Utilizator domniiIonut Domniteanu domnii Data 20 februarie 2022 19:49:41
Problema Perle Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <iostream>
#include <fstream>
using namespace std;
unsigned int i, n, j, s;
const int l = 22;
bool v[23];

bool consecutiv(int p)
{
	for (i = l;i >= 1;--i)
	{
		if (v[i] == 1)
		{
			p = i;
			break;
		}
	}
	for (i = 1;i < p;++i)
	{
		if (v[i] != v[i + 1])
		{
			return false;
		}
	}
	return true;
}
int suma(int s, int d)
{
	if (s == d)
	{
		return v[s];
	}
	else
	{
		int mij = (s + d) / 2;
		int a = suma(s, mij);
		int b = suma(mij + 1, d);
		return a + b;
	}
}

int main()
{
	int p;
	ifstream f("coins.in");
	ofstream g("coins.out");
	f >> n;
	for (j = 1;j <= n;++j)
	{
		p = 0;
		for (i = 1;i <= 22;++i)
		{
			f >> v[i];
		}

		if (consecutiv(l) == true)
		{
			s += suma(1, l);
		}
	}
	g << s;
	return 0;
}