Mən hər yerdə olmuşam#7546

Mən hər yerdə olmuşam (Həll təhlili)

Hər bir testdən şəhərlərin adlarını set formatında yığırıq. Ziyarət edilmiş şəhərlərin sayı bu set-in ölçüsünə bərabər olacaq.

Alqoritmin icrası

Bir stringi və setini elan edirik.

string word;
set<string> s;

Testlərin sayını, , oxuyuruq. Ardıcıllıqla testini işləyirik.

cin >> tests;
while(tests--)
{

Şəhərlərin sayı, , oxuyuruq. setini təmizləyirik.

  cin >> n;
  s.clear();

Şəhərləri oxuyuruq, onları setinə əlavə edirik.

  while(n--)
  {
    cin >> word;
    s.insert(word);
  }

Fərqli ziyarət edilmiş şəhərlərin sayını çıxarırıq.

  cout << s.size() << endl;
}

Java icrası

import java.util.*;
 
public class Main
{
  public static void main(String[] args)
  {
    Scanner con = new Scanner(System.in);
    TreeSet<String> s = new TreeSet<String>();
 
    int tests = con.nextInt();
    for(int i = 0; i < tests; i++)
    {
      int n = con.nextInt();
      s.clear();
      for(int j = 0; j < n; j++)
      {
        String word = con.next();
        s.add(word);
      }
      System.out.println(s.size());      
    }
    con.close();
  }
} 

Python icrası

Testlərin sayını, , oxuyuruq. Ardıcıllıqla testini işləyirik.

tests = int(input())
for _ in range(tests):

Şəhərlərin sayı, , oxuyuruq. setini təmizləyirik.

  n = int(input())
  s = set()

Şəhərləri oxuyuruq, onları setinə əlavə edirik.

  for _ in range(n):
    s.add(input())

Fərqli ziyarət edilmiş şəhərlərin sayını çıxarırıq.

  print(len(s))