CF566A.Matching Names

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Teachers of one programming summer school decided to make a surprise for the students by giving them names in the style of the "Hobbit" movie. Each student must get a pseudonym maximally similar to his own name. The pseudonym must be a name of some character of the popular saga and now the teachers are busy matching pseudonyms to student names.

There are nn students in a summer school. Teachers chose exactly nn pseudonyms for them. Each student must get exactly one pseudonym corresponding to him. Let us determine the relevance of a pseudonym bb to a student with name aa as the length of the largest common prefix aa and bb . We will represent such value as . Then we can determine the quality of matching of the pseudonyms to students as a sum of relevances of all pseudonyms to the corresponding students.

Find the matching between students and pseudonyms with the maximum quality.

输入格式

The first line contains number nn ( 1<=n<=1000001<=n<=100000 ) — the number of students in the summer school.

Next nn lines contain the name of the students. Each name is a non-empty word consisting of lowercase English letters. Some names can be repeating.

The last nn lines contain the given pseudonyms. Each pseudonym is a non-empty word consisting of small English letters. Some pseudonyms can be repeating.

The total length of all the names and pseudonyms doesn't exceed 800000800000 characters.

输出格式

In the first line print the maximum possible quality of matching pseudonyms to students.

In the next nn lines describe the optimal matching. Each line must have the form aa bb ( 1<=a,b<=n1<=a,b<=n ), that means that the student who was number aa in the input, must match to the pseudonym number bb in the input.

The matching should be a one-to-one correspondence, that is, each student and each pseudonym should occur exactly once in your output. If there are several optimal answers, output any.

输入输出样例

  • 输入#1

    5
    gennady
    galya
    boris
    bill
    toshik
    bilbo
    torin
    gendalf
    smaug
    galadriel
    

    输出#1

    11
    4 1
    2 5
    1 3
    5 2
    3 4
    

说明/提示

The first test from the statement the match looks as follows:

  • bill bilbo (lcp = 3)
  • galya galadriel (lcp = 3)
  • gennady gendalf (lcp = 3)
  • toshik torin (lcp = 2)
  • boris smaug (lcp = 0)
首页