Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
CMI_01_09 - Tablica binarna |
Na wejściu pojawi się tablica binarna o wymiarach n x m wypełniona zerami i jedynkami. Wykonujemy jedną z dwóch operacji: s lub z, gdzie s jest zapytaniem o liczbę jedynek w tej tablicy, natomiast po z pojawią się trzy liczby x1 y1 oraz n które określają, że zamieniamy wszystkie cyfry w kwadracie, któego lewy górny róg ma współrzędne x2 i y2, a długość boku wynosi n, na przeciwne.
Wejście
Pierwszy wiersz zawiera dwie liczby całkowite dodatnie n i m nie większe niż 1000, określające wymiary tablicy (n - liczba wierszy, m - liczba kolumn).
Następnie n wierszy po m cyfr macierzy.
W Kolejnym wierszu jedna liczba q (nie większa niż 1000), definiująca liczbę zapytań.
W kolejnych q wierszach zapytanie składające się z jednej z dwóch możliwości:
- dla zapytania s należy wypisać liczbę jedynek w macierzy
- dla zapytania z x1 y1 n należy zamienić wszystkie cyfry w kwadracie o wymiarach n x n i lewym górnym rogu w punkcie (x1, y1), na przeciwne. Gwarantuje się, że kwadrat zawsze mieści się w tablicy.
Wyjście
Na każde zapytanie typu s, należy wypisać liczbę jedynek w macierzy.
Przykład
Wejście: 3 3 101 111 110 5 s z 0 0 2 s z 0 0 1 s Wyjście: 7 5 6
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2020-10-28 |
Limit czasu wykonania programu: | 1s-15s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |