witam, na wstepie chce zaznaczyc ze jestem kompletnym laikiem jesli chodzi o programowanie.ucze sie w c++.dostalam zadanie, a w zasadzie zagadke ktora zapewne kazdy zna-mianowicie chodzi o 100 wiezniow i ich czapki, celem jest zostaienie przy zyciu jak najwiekszej ich liczby.zrobilam to na tablicha, ponizej wkleje kod.moze nie jest to profesjonalne, ale dziala i o to mi chodzilo.musze na tej podstawie to samo zadanie zrobic na liscie.nie mam pojecia jak sie za to zabrac.prosze o pomoc napisania programu, ja i tlumaczenie kolejnych czynnosci wykonywanych na listach.
#include <sstream>
#include <cstdlib>
#include <iostream>
#include <string>
#include<ctime>
using namespace std;
int wypelnienie(int T[100])
{
srand ( time(NULL) );
for(int i=0;i<100;i++)
{
T[i]=rand() % 2;
}
for(int i=0;i<100;i++)
cout<<T[i]<<" ";
cout<<endl;
return 0;
}
int liczando(int T[100])
{
int i=0, j=0;
int suma=0, suma1=0;
int czapki[100];
for(j=0;j<100;j++)
{
suma=suma+T[i];
}
if(suma%2==0)
czapki[0]=1;
else
czapki[0]=0;
for(i=1;i<100;i++)
{
suma1=suma-T[i];
if(suma1<suma)
czapki[i]=1;
else
czapki[i]=0;
suma=suma-T[i];
}
for(j=0;j<100;j++)
{
cout<< czapki[j]<<" ";
}
cout<<endl;
return 0;
}
int main()
{
int T[100];
cout<<"oto wiezniowie "<<endl;
wypelnienie(T);
cout<<"ilu przezylo? "<<endl;
liczando(T);
return 0;
}