G. Порядок задач

Codeforces
IDCF10120G
Time2000ms
Memory256MB
Difficulty
English · Original
Formal · Original
Имеется n задач по программированию, обозначенных числами от 1 до n, где 1 — самая простая задача, а n — самая сложная. Какой же должен быть порядок этих задач в контесте? Егор считает, что оптимальный порядок задач выражается перестановкой {ai}, а Денис настаивает на том, что он должен быть равен {bi}. Если в итоге будет выбран порядок задач, выражающийся перестановкой {pi}, то ненависть Егора к контесту будет равна , а ненависть Дениса — . Окончательное решение почему-то осталось за Еленой, и она намерена минимизировать суммарную ненависть Егора и Дениса. Какой порядок задач она должна выбрать? В первой строке записано целое число n (1 ≤ n ≤ 100000) — длина перестановок. Во второй строке записаны n чисел ai — оптимальный порядок задач для Егора. В третьей строке записаны n чисел bi — оптимальный порядок задач для Дениса. Выведите n различных целых чисел от 1 до n через пробел — перестановку {pi}, которая минимизирует суммарную ненависть. ## Входные Данные В первой строке записано целое число n (1 ≤ n ≤ 100000) — длина перестановок.Во второй строке записаны n чисел ai — оптимальный порядок задач для Егора.В третьей строке записаны n чисел bi — оптимальный порядок задач для Дениса. ## Выходные Данные Выведите n различных целых чисел от 1 до n через пробел — перестановку {pi}, которая минимизирует суммарную ненависть. ## Пример Входные данные41 3 4 22 4 1 3Выходные данные1 4 3 2 [samples]
**Definitions** Let $ n \in \mathbb{Z}^+ $ be the number of problems. Let $ A = (a_1, a_2, \dots, a_n) $ and $ B = (b_1, b_2, \dots, b_n) $ be two permutations of $ \{1, 2, \dots, n\} $, representing Egor's and Denis's preferred orders, respectively. Let $ P = (p_1, p_2, \dots, p_n) $ be a permutation of $ \{1, 2, \dots, n\} $, representing the final contest order. **Constraints** $ 1 \leq n \leq 100000 $ $ A, B, P \in S_n $ (symmetric group on $ n $ elements) **Objective** Minimize the total hatred: $$ \sum_{i=1}^n |p_i - a_i| + \sum_{i=1}^n |p_i - b_i| $$ That is, find permutation $ P $ minimizing: $$ \sum_{i=1}^n \left( |p_i - a_i| + |p_i - b_i| \right) $$
API Response (JSON)
{
  "problem": {
    "name": "G. Порядок задач",
    "description": {
      "content": "Имеется n задач по программированию, обозначенных числами от 1 до n, где 1 — самая простая задача, а n — самая сложная. Какой же должен быть порядок этих задач в контесте? Егор считает, что оптимальн",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10120G"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Имеется n задач по программированию, обозначенных числами от 1 до n, где 1 — самая простая задача, а n — самая сложная. Какой же должен быть порядок этих задач в контесте?\n\nЕгор считает, что оптимальн...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ n \\in \\mathbb{Z}^+ $ be the number of problems.  \nLet $ A = (a_1, a_2, \\dots, a_n) $ and $ B = (b_1, b_2, \\dots, b_n) $ be two permutations of $ \\{1, 2, \\dots, n\\} $, represent...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments