LearnToCP
Prijavi se
Navigacija
PočetnaRoad-mapaProblemiO Nama
Teorija
Osnove
Tipovi podataka, Unos i IzlazC++ sintaksaModuloVektoriMatriceVremenska Složenost Algoritma
Sortiranje
SortiranjeSortiranje PrebrojavanjemRadix Sort
Tehnike Optimizacije
Dva PokazivačaZbir brojeva od 1 do nZbir PrefiksaBinarna PretragaPohlepni AlgoritmiFunkcije Binarne Pretrage
Binarni Brojevi
Binarni BrojeviBrojevi u koduOperacije nad Bitovima
Matematika
Binarno StepenovanjeProsti BrojeviRastavljanje na proste činioceNZD i NZSEratostenovo Sito
Strukture Podataka
Niske (Stringovi)StekRed
Dinamičko Programiranje
O DP-uDP problemi

Balansirane Zagrade

EasyProblem #10
VremeMemorijaUlazIzlaz
1 s64 MBstdinstdout

Koju otvorenu zagradu mora da zatvori zatvarajuća zagrada?

Svaki editor za kod ume trenutno da ti kaže da li se zagrade u programu poklapaju. Večeras si ti editor.

Dat je string sastavljen od karaktera ( i ). Proveri da li su zagrade balansirane - svaku otvorenu zagradu zatvara tačno jedna zatvarajuća zagrada koja dolazi posle nje, i svaka zatvarajuća zagrada zatvara tačno jednu otvorenu zagradu pre nje.

Na primer, (()()) je balansirano, dok (() nije (jedna zagrada nikada nije zatvorena), a )( nije (zatvarajuća se pojavila pre bilo koje otvorene).

Ulaz

U prvom redu nalazi se jedan string s, sastavljen samo od karaktera ( i ).

Izlaz

Ispiši YES ako su zagrade balansirane, a NO u suprotnom.

Primer

Input
(()())
Output
YES

Prvu zagradu zatvara poslednja, a dva para unutra zatvaraju jedan drugi.

Ograničenja

1≤∣s∣≤106

Pošalji svoje rešenje

Prijavi se da pošalješ rešenje i pratiš svoj napredak.

Prijavi se