(Archivo IO): Entrada: card.in de salida: card.out
límite de tiempo: 1000 ms limitaciones de espacio: las restricciones específicas 262144 KB
Goto Boletín de problemas
título Descripción
es muy similar a una tarjeta de vacas, aunque ella no lo hizo el pulgar, pero ella tiene una casi obsesión con el amor de naipes. Por desgracia, otros bovinos en la manada no son buen oponente. Su nivel es muy malo. Ellos son siempre de una manera completamente predecible a jugar a las cartas! Sin embargo,
todavía puede elegir la forma de ganar.
y su amiga Elsie jugar un simple juego de cartas, que han llegado a pagar una
tarjetas postales, números digitales de la tarjeta esté
, y se dividen en dos, a una tarjeta
y una tarjeta de
.
Entonces empezaron a jugar a las cartas, un total de conducta
rueda, en cada ronda,
和
están jugando una carta, las cartas que tienen un gran puntos.
magia
se puede predecir
secuencia de tarjetas, y similares como para ganar. cerciorarse
el número máximo de puntos se puede ganar.
Introduzca
la primera línea de un número entero
.
El siguiente
línea es
para redondear las tarjetas de juego continuo. Tenga en cuenta que es fácil de determinar a partir de la información
tarjeta.
De salida
se da línea
puede anotar el número máximo de puntos.
entrada de la muestra
. 3
. 1
. 6
. 4
Salida de muestra
2
límite de rango de datos
Tip
Bessie manos de cartas son
, de acuerdo con su
secuenciales tarjetas de 2 puntos se pueden obtener.
La resolución de problemas las ideas
codicioso.
Preparar dos filas ordenadas, con el principio de caballo de Tian Ji.
código
#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<algorithm>
#include<iomanip>
#include<cmath>
using namespace std;
int n,m,a[100010],b[50010],c[50010],x,ans,k,k1,j;
int main(){
freopen("card.in","r",stdin);
freopen("card.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
a[x]=1;
}
k=0,k1=0;
for(int i=1;i<=n*2;i++)
if(!a[i])
b[++k]=i;
else
c[++k1]=i;
j=1,ans=0;
for(int i=1;i<=n;i++)
{
if(c[j]<b[i])
{
j++;
ans++;
if(j>n)
{
printf("%d",ans);
return 0;
}
}
}
printf("%d",ans);
}