Vektorlar
На müstəvidə (x, y)
nöqtələr çoxluğu verilib, burada x
və y
tam ədədlərdir, 1 ≤ x ≤ M
, 1 ≤ y ≤ N
. Hər nöqtədən dəqiq bir aşağıdakı vektorlardan biri çıxır: (-1
, -1
), (-1
, 0), (-1
, 1), (0, 1), (1, 1)
, (1, 0), (1, -1
), (0, -1
). Hər vektor müstəvinin bir tam nöqtəsini digərinə birləşdirir. Məsələn, əgər (2, 5)
nöqtəsindən (1, 1)
vektoru çıxırsa, o, bu nöqtəni (3, 6)
ilə birləşdirir, amma əksinə deyil.
Müstəvinin iki və daha çox nöqtəsindən ibarət ardıcıllığı a[1]
, a[2]
, …, a[k]
dövrə adlandıracağıq, əgər hər bir nöqtə a[i]
vektorla a[i]+1
(1 ≤ i
≤ k-1) ilə birləşirsə və a[k]
vektorla a[1]
ilə birləşirsə. Dövrələr fərqli sayılır, əgər onlar ən azı bir zirvə ilə fərqlənirsə.
Nöqtələrdən çıxan vektorlar haqqında məlumat əsasında fərqli dövrələrin sayını tapan proqram yazın.
Giriş məlumatları
Birinci sətir iki tam ədəd N
(1 ≤ N ≤ 100
) və M
(1 ≤ M ≤ 100
) ehtiva edir. Növbəti N
sətirin hər biri M
cüt ədəd ehtiva edir (yəni 2×M ədəd). x
cütü y
sətirində yerləşir və (x, y)
nöqtəsində vektoru təyin edir.
Çıxış məlumatları
Vektorlarla əmələ gələn dövrələrin sayını göstərən bir tam ədəd çıxarın.