Yarý kolleksioner kəpənək#3966

Yarý kolleksioner kəpənək (Həll təhlili)

Kolleksiyadakı kəpənək növlərinin nömrələrini çoxluğunda saxlayacağıq. Beləliklə, Andrey Sergeyeviçdə növü kəpənəyin olub-olmadığını yoxlamaq nömrəsinin çoxluğuna mənsubiyyətini yoxlamağa çevrilir.

Alqoritmin həyata keçirilməsi

Kolleksiyadakı bütün kəpənək növlərinin nömrələrini çoxluğuna saxlayırıq.

set<uint> s;

Giriş verisini oxuyuruq.

scanf("%d", &n);
for (i = 0; i < n; i++)
{
  scanf("%d", &x);
  s.insert(x);
}

sorğusunu işlədik.

scanf("%d", &m);
for (i = 0; i < m; i++)
{

Kolleksiyada növü kəpənəyin olub-olmadığını yoxlayırıq. Cavab müsbət olacaq, əgər nömrəsi çoxluğuna aiddirsə.

  scanf("%d", &x);
  if (s.find(x) != s.end()) puts("YES");
  else puts("NO");
}

Python realizasiyası

Giriş verisini oxuyuruq.

n = int(input())
lst = list(map(int,input().split()))
m = int(input())
q = list(map(int,input().split()))

Kolleksiyadakı bütün kəpənək növlərinin nömrələrini çoxluğuna saxlayırıq.

s = set(lst)

sorğusunu işlədik.

for x in q:

Kolleksiyada növü kəpənəyin olub-olmadığını yoxlayırıq. Cavab müsbət olacaq, əgər nömrəsi çoxluğuna aiddirsə.

  if x in s:
    print("YES")
  else:
    print("NO")