CF254A.Cards with Numbers
普及-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Petya has got 2_n_ cards, each card contains some integer. The numbers on the cards can be the same. Let's index all cards by consecutive integers from 1 to 2_n_. We'll denote the number that is written on a card with number i, as a__i. In order to play one entertaining game with his friends, Petya needs to split the cards into pairs so that each pair had equal numbers on the cards. Help Petya do that.
佩佳有 2n 张卡片,每张卡片上写有一个整数。卡片上的数字可以相同。我们用从 1 到 2n 的连续整数对所有卡片进行编号。记编号为 i 的卡片上的数字为 ai。为了和朋友们玩一个有趣的 game,佩佳需要将这些卡片两两配对,使得每一对中的两张卡片上的数字相等。请帮助佩佳完成这一配对。
输入格式
The first line contains integer n (1 ≤ n ≤ 3·105). The second line contains the sequence of 2_n_ positive integers _a_1, _a_2, ..., a_2_n (1 ≤ a__i ≤ 5000) — the numbers that are written on the cards. The numbers on the line are separated by single spaces.
第一行包含一个整数 n(1 ≤ n ≤ 3⋅105)。第二行包含长度为 2n 的正整数序列 a1,a2,…,a2n(1 ≤ ai ≤ 5000)——即写在卡片上的数字。同一行中的数字以单个空格分隔。
输出格式
If it is impossible to divide the cards into pairs so that cards in each pair had the same numbers, print on a single line integer -1. But if the required partition exists, then print n pairs of integers, a pair per line — the indices of the cards that form the pairs.
Separate the numbers on the lines by spaces. You can print the pairs and the numbers in the pairs in any order. If there are multiple solutions, print any of them.
如果无法将卡片分成若干对,使得每对卡片上的数字相同,则在单独一行输出整数 −1。但如果存在满足要求的划分方式,则输出 n 对整数,每行一对——即组成每对的卡片的下标。
每行中的两个数字用空格分隔。你可以以任意顺序输出各对,以及每对中两个数字的顺序。若存在多种解法,输出任意一种即可。
输入输出样例
输入#1
3 20 30 10 30 20 10
输出#1
4 2 1 5 6 3
输入#2
1 1 2
输出#2
-1
输入解题思路,AI测评打分。不知道怎么写?