eolymp
bolt
Try our new interface for solving problems
Məsələlər

Симметричное дерево

Симметричное дерево

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB

Заданы два массива целых чисел: массив ключей и массив ассоциированных с ними значений. Создайте из них Бинарное Дерево Поиска. Если вставляемый ключ равен ключу в текущей вершине, то его следует вставлять в правое поддерево.

Реализуйте метод IsSymmetric, который определит, является ли дерево из ассоциированных значений зеркальным отображением самого себя (то есть симметричным относительно центра).

prb7467.gif

Напишите код согласно следующего интерфейса:

// C / C++
class TreeNode
{
public:
  int key;
  int val;
  TreeNode *left, *right;
  TreeNode(int key, int val) : key(key), val(val), left(NULL), right(NULL) {}
};

class Tree
{
public:
  TreeNode *head;
  Tree() : head(NULL) {};
  void Insert(int key, int val); // Вставка вершины в Бинарное Дерево Поиска
  int IsSymmetric(void); // Вернуть 1 если дерево из ассоциированных значений симметрично и 0 в противном случае
};
// Java
class TreeNode
{
  int key, val;
  TreeNode left, right;
  TreeNode(int key, int val)
  {
    this.key = key;
    this.val = val;
    left = right = null;
  }
}

class Tree
{
  TreeNode head;
  Tree();
  void Insert(int key, int val); // Вставка вершины в Бинарное Дерево Поиска
  int isSymmetric(); // Вернуть 1 если дерево из ассоциированных значений симметрично и 0 в противном случае
}

Вы можете создавать (использовать) по необходимости дополнительные методы.

Giriş verilənləri

Первая строка содержит число n (1n100). Вторая строка содержит n целых чисел - ключи: key[1], key[2], ..., key[n]. Третья строка содержит n целых чисел - ассоциированные значения val[1], val[2], ..., val[n]. Значения val[i] ассоциированы с ключом key[i].

Çıxış verilənləri

Создайте Бинарное Дерево Поиска из входных данных. Выведите 1 если дерево из ассоциированных значений симметрично и 0 в противном случае.

Nümunə

Giriş verilənləri #1
7
10 5 1 15 20 7 12
4 5 6 5 6 1 1
Çıxış verilənləri #1
1
Müəllif Михаил Медведев
Mənbə Язык С++