Dzieci bardzo dobrze klasyfikują i liczą przedmioty. Komputery wydają się mieć więcej problemów. To jest uproszczona wersja tego problemu. Czy potrafisz napisać mały program, który potrafi klasyfikować i liczyć obiekty na obrazie?
Problem: Biorąc pod uwagę obraz zawierający jedno lub więcej okręgów i prostokątów, zwróć 2 liczby całkowite z liczbą okręgów i liczbą prostokątów.
Zasady
- Obrazem wejściowym będą czarne cyfry na białym tle w dowolnym wybranym formacie bitmapy.
- Szerokość i wysokość obrazu będzie wynosić od 100 do 1000 pikseli.
- Ryciny zostaną w całości zawarte w obrazie.
- Liczby będą miały szerokość linii 1 piksela.
- Obrazy nie będą używać wygładzania. Będą czarno-białe tylko.
- Ryciny mogą dotykać, przecinać się lub znajdować się wewnątrz innej figury.
- Przecinające się figury będą miały maksymalnie 4 wspólne piksele.
- Koła będą miały średnicę 20 pikseli lub więcej.
- Boki prostokąta będą miały co najmniej 10 pikseli.
- Nie możesz używać żadnych wbudowanych bibliotek lub bibliotek, które rozpoznają kształty, ani żadnych innych funkcji, które sprawiają, że to wyzwanie jest trywialne.
- Zwróć lub wydrukuj 2 liczby całkowite z liczbą okręgów i prostokątów.
Przykład 1
Odpowiedź: 3 4
Przykład 2:
Odpowiedź: 4 13
Jest to wyzwanie polegające na kodzie golfowym, więc wygra najkrótszy program lub funkcja w każdym języku.