Linnatänavate ümbervärvimine

시간 제한1초메모리 제한1024 MB

요약
연결 그래프의 모든 간선을 빨강, 파랑, 초록으로 칠해 임의의 두 정점 사이에 연속한 간선 색이 다른 산책로가 존재하도록 하거나 불가능함을 판정한다.
난이도

보통10점 중 7점

유형
그래프, BFS, DFS, 구현
정답자
아직 제출이 없습니다

문제

Väga Uhkes Linnas toimub sel aastal Iseäranis Oluline Informaatikavõistlus. Et kaugetele külalistele muljet avaldada, on linnas alustatud mitmeid renoveerimistöid. Muuhulgas oli plaan värvida kõik linnatänavad kas punaseks või siniseks. Nüüd on aga rohelise värvi tootja teinud linnapeale "kingituse" ja seega tuleb plaanid ümber teha.

Linn koosneb endiselt VV ristmikust ning EE neid ühendavast kahesuunalisest tänavast. Ristmikud on nummerdatud 1…V1 \ldots V. Ühtki ristmike paari ei ühenda mitu tänavat, ükski tänav ei ühenda mõnd ristmikku iseendaga ja igalt ristmikult on igale teisele võimalik mööda tänavaid jalutada.

Iga tänav tuleks värvida kas punaseks, siniseks või roheliseks. Linnapea arvab, et tänavatel on palju huvitavam jalutada, kui iga tänav on eelmisest erinevat värvi. Niisiis, otsustamaks, kuidas tänavaid värvida, on linnapea andnud lisatingimuse: "kui pp ja qq on erinevad ristmikud, siis peab olema võimalik jalutada ristmikult pp ristmikule qq nii, et iga tänav sellel jalutuskäigul on eelmisest erinevat värvi." Mõni selline jalutuskäik võib ühte tänavat või ristmikku ka mitu korda külastada.

Kirjutada programm, mis otsustab, mis värvi iga tänav värvida, või tuvastab, et selline värvimine ei ole võimalik.

입력

Faili esimesel real on kaks täisarvu: VV ja EE ehk ristmike ja tänavate arv (1≤V≤5⋅1041 \le V \le 5 \cdot 10^4, 1≤E≤2⋅1051 \le E \le 2 \cdot 10^5). Järgneval EE real on igaühel kaks täisarvu uu ja vv (1≤u≤V1 \le u \le V, 1≤v≤V1 \le v \le V), mis näitavad, et ristmike uu ja vv vahel on tänav.

출력

Faili esimesse ritta kirjutada SAAB, kui selline värvimine on võimalik, või EI SAA, kui ei ole. Kui värvimine on võimalik, siis kirjutada järgmisele EE reale igaühele ühe tänava värv ('punane', 'sinine' või 'roheline') tänavate sisendis kirjeldamise järjekorras.

예제2

  1. 예제 1

    입력
    6 6
    1 2
    2 3
    3 1
    1 4
    4 5
    4 6
    
    예상 출력
    SAAB
    punane
    sinine
    roheline
    sinine
    roheline
    roheline
    
  2. 예제 2

    입력
    5 4
    1 2
    1 3
    1 4
    1 5
    
    예상 출력
    EI SAA