LearnToCP
Prijavi se
Navigacija
PočetnaRoad-mapaProblemiO Nama
Teorija
Takmičarsko Znanje
Izbor Radnog Okruženja (IDE)Interaktivni ZadaciOutput-only Zadaci
Osnove
Tvoj Prvi ProgramTipovi podataka, Unos i IzlazC++ sintaksaModuloFunkcijeVektoriMatriceVremenska Složenost Algoritma
Sortiranje
SortiranjeSortiranje PrebrojavanjemRadix Sort
Tehnike Optimizacije
Dva PokazivačaZbir brojeva od 1 do nZbir PrefiksaBinarna PretragaPohlepni AlgoritmiFunkcije Binarne PretrageBinarna Pretraga po RešenjuPodeli, pa Vladaj
Binarni Brojevi
Binarni BrojeviBrojevi u koduOperacije nad BitovimaBitmaske
Matematika
Binarno StepenovanjeProsti BrojeviRastavljanje na proste činioceNZD i NZSEratostenovo SitoModifikovano Sito
Strukture Podataka
Niske (Stringovi)StekRedMapeSkupovi (Set)Red sa PrioritetomKorišćenje Proizvoljnih KriterijumaSegmentna StablaFenvikova StablaSparse TabeleDisjunktni SkupoviSqrt Dekompozicija
Kombinatorika
Pravilo SabiranjaPravilo MnoženjaKombinatorni ObjektiPrincip Uključenja Isključenja
Geometrija
Osnove GeometrijeVektoriVektorski i Skalarni ProizvodLinijePoligoniUgloviTačka u PoligonuRastojanja i Tačke PresekaKonveksni OmotačKrugovi
Rekurzija
PokazivačiRekurzijaGenerisanje Kombinatornih Objekata
Dinamičko Programiranje
O DP-uDP problemiDP nad StablimaDP nad Bitmaskama
Teorija Grafova
GrafoviDFS i BFSNajkraći PuteviStablaTopološko SortiranjeDajkstrin AlgoritamMinimalna Razapinjuća StablaAlgoritmi Najkraćih Puteva
Napredna Teorija Grafova
Dvostruka PovezanostJako Povezane KomponenteBipartitni GrafMaksimalni Protok u GrafuFord-Fulkersonov AlgoritamDualnost Protoka i Minimalnog PresekaTeško-Laka DekompozicijaCentroidna Dekompozicija
Napredne Strukture Podataka
2D i 3D Segmentna StablaLenjo PropagiranjeImplicitna Segmentna StablaPerzistentna Segmentna StablaNajbliži Zajednički PredakTrieBalansirana Binarna Stabla PretrageMoov Algoritam

Provera ciklusa

EasyProblem #67
VremeMemorijaUlazIzlaz
1 s64 MBstdinstdout

Ne treba ti posebna potraga za ciklusom. Kanov algoritam ti to već kaže.

U budućnosti će postojati više svetova, a unutar svakog od njih ljudi će moći da se teleportuju sa planete na planetu. Teleport je jednosmeran: veza sa planete a na planetu b vodi od a do b, ali ne i nazad.

Za svaki svet odredi da li postoji planeta sa koje se može otići pa se nizom teleportovanja vratiti na nju.

Ulaz

U prvoj liniji ulaza je jedan ceo broj t - broj svetova.
U prvoj liniji svakog sveta su dva cela broja v i e - broj planeta i broj teleporta.
U svakoj od sledećih e linija su dva cela broja a i b - teleport koji vodi sa planete a na planetu b.

Planete su označene brojevima od 0 do v−1.

Izlaz

Za svaki svet ispiši u posebnoj liniji yes ako postoji planeta sa koje se može otići i vratiti na nju, a no u suprotnom.

Primer

Input
2
5 5
0 1
2 1
2 3
3 4
4 2
5 5
0 1
2 1
2 3
3 4
4 0
Output
yes
no

U prvom svetu se sa planete 2 može otići i vratiti, teleportovanjem 2→3→4→2. Drugi svet koristi skoro iste veze, ali poslednja vodi na planetu 0 umesto na planetu 2 - a na planetu 0 ne stiže nijedan teleport, pa se nazad ne može nikako.

Ograničenja

1≤t≤20
2≤v≤5000
1≤e≤2⋅104
0≤a,b≤v−1
Zbir v preko svih svetova ne prelazi 5⋅104, a zbir e ne prelazi 2⋅105


Zadatak je, uz dozvolu, preuzet iz zadatka Provera ciklusa, čiji su autori Društvo matematičara Srbije i Fondacija Petlja.

Pošalji svoje rešenje

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

Prijavi se