PROGRAMOWANIE I ALGORYTMY

Po tyle samo zer i jedynek


powrót

Zadanie

Napisz program, który wczyta pewną ilość liczb binarnych i przepisze na wyjście tylko te, które zbudowane są z tej samej ilości zer i jedynek.

Wejście

W pierwszym wierszu jedna liczba n nie większa niż 1000, określająca ilość liczb do przeanalizowania. W kolejnych n wierszach po jednej liczbie binarnej złożonej z maksymalnie 1000 cyfr.

Wyjście

Na wyjściu wypisz w kolejności wczytania tylko te liczby, które spełniają kryteria zadania.


Przykład

Wejście
5
1
10
1100
11001
100000011
Wyjście
10
1100

Rozwiązanie w języku Python (wersja pod część praktyczną)

# ***********************algorytm.edu.pl************************************

# główna część programu

n = int(input()) # podaję liczbę zestawów danych

for i in range(n):
    liczba = input()
    if liczba.count('0') == liczba.count('1'): # sprawdzam, czy zer jest tyle samo co jedynek
        print(liczba)

Rozwiązanie w języku Python (wersja pod część teoretyczną)

# ***********************algorytm.edu.pl************************************
def czy_ok(liczba):
    licz = 0
    for i in range(len(liczba)):
        if liczba[i] == '0':
            licz += 1
        else:
            licz -= 1
    return licz == 0
# główna część programu

n = int(input()) # podaję liczbę zestawów danych

for i in range(n):
    liczba = input()
    if czy_ok(liczba):
        print(liczba)