#include <iostream>
#include <fstream>

using namespace std;

fstream jhwh, przez2, przez8, maxmin;

bool czyWiecej(string a)
{
    int lzer=0;
    int ljed=0;
    for(int ii=0; ii<a.length(); ii++)
    {
        if(a[ii]=='0')
            lzer++;
        else
            ljed++;
    }
    if(lzer>ljed)
        return true;
    return false;
}

string inwersja(string a)
{
    string axa;
    for(int ii=a.length()-1; ii>-1; ii--)
        axa+=a[ii];
    return axa;
}

int naDziesietny(string a)
{
    a=inwersja(a);
    int axa=0;
    for(int ii=a.length(); ii>=0; ii--)
    {
        int aa=1;
        for(int iii=0; iii<ii; iii++)
        {
            aa=aa*2;
        }
        //cout<<"|"<<aa<<endl;
        if(a[ii]=='1')
            axa+=aa;
    }
    return axa;
}

int main()
{
    jhwh.open("./Dane_PR2/liczby.txt", ios::in);
    przez2.open("przez2.txt", ios::out);
    przez8.open("przez8.txt", ios::out);
    maxmin.open("maxmin.txt", ios::out);
    int pdpnkt1=0;
    int maxx=0;
    int maxxx;
    int minn=1569325055;
    int minnn;
    for(int i=0; i<1000; i++)
    {
        string liczba;
        jhwh>>liczba;
        if(naDziesietny(liczba)%8==0)
            przez8<<liczba<<endl;
        if(naDziesietny(liczba)%2==0)
            przez2<<liczba<<endl;
        if(naDziesietny(liczba)>maxx)
        {
            maxx=naDziesietny(liczba);
            maxxx=i;
        }
        if(naDziesietny(liczba)<minn)
        {
            minn=naDziesietny(liczba);
            minnn=i;
        }
        if(czyWiecej(liczba))
            pdpnkt1++;
    }
    maxmin<<minnn<<endl<<maxxx;
    return 0;
}
