A. Ehab deja de ser Thanos
límite de tiempo por prueba
1 segundo
límite de memoria por prueba
256 megabytes
entrada
entrada estándar
salida
la salida estándar
Que le den una matriz de longitud aa 2n2n. ¿Es posible cambiar el orden en tal manera de modo que la suma de los primeros elementos nn no es igual a la suma de los últimos elementos nn?
Entrada
La primera línea contiene un número entero nn (1≤n≤10001≤n≤1000), donde 2n2n es el número de elementos en el aa matriz.
La segunda línea contiene números enteros separados por espacios 2n2n A1A1, A2A2, ......, a2na2n (1≤ai≤1061≤ai≤106) - los elementos de la aa matriz.
Salida
Si no hay solución, imprimir "-1" (sin comillas). De lo contrario, imprimir una sola línea que contiene números enteros 2n2nspace separados. Deben formar un reordenamiento de AA. Se le permite no cambiar el orden.
Ejemplos
entrada
Copiar
3
1 2 2 1 3 1
salida
Copiar
2 1 3 1 1 2
entrada
Copiar
1
1 1
salida
Copiar
-1
Nota
En el primer ejemplo, los primeros elementos nn tener suma 2 + 1 + 3 = 62 + 1 + 3 = 6, mientras que los últimos elementos nn tienen suma 1 + 1 + 2 = 41 + 1 + 2 = 4. Las sumas no son iguales.
En el segundo ejemplo, no hay ninguna solución.
Cuestión está destinada: al 2N número, reordenado, si se permite a la primera n no es igual al número n y la parte posterior, el número de salidas puede ser ordenada, no hay salidas de -1.
Solución: directamente antes de la clasificación y determinar si el n es igual al número n corresponde a una comparación directa de los primeros y últimos números son iguales, siempre y cuando haya un número es igual a, es igual antes y después de la clasificación, es igual al número de todos sólo es igual .
c ++:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a[2010];
cin>>n;
for(int i=0; i<2*n; i++)
scanf("%d",&a[i]);
sort(a,a+2*n);
if(a[0]==a[2*n-1])
puts("-1");
else for(int i=0; i<n*2; i++)
printf("%d\n",a[i]);
return 0;
}
pitón:
n=int(input())
a=sorted(list(map(int,input().split())))
if a[0]==a[-1]:print("-1")
else:print(*a)