(Jizhong) (2200) [교육] GDKOI 카드 게임 (카드) [욕심]

(파일 IO) : 입력 : card.in 출력 : card.out
시간 제한 : 1000 MS 공간 제약 : 262,144킬로바이트의 특정 제한
고토 ProblemSet


제목 설명
이자형 에스 에스 나는 이자형 베시 그녀가 엄지 손가락 않았지만, 매우 카드 소처럼, 그러나 그녀는 카드 놀이의 사랑 거의 강박 관념이있다. 불행하게도, 무리의 다른 가축 좋은 상대가되지 않습니다. 이들의 수준은 정말 나쁜 것입니다. 그들은 놀이 카드를 완전히 예측 가능한 방식으로 항상! 그럼에도 불구하고, 이자형 에스 에스 나는 이자형 베시 여전히 승리하는 방법을 선택할 수 있습니다.
이자형 에스 에스 나는 이자형 베시 와 간단한 카드 게임을하는 그녀의 친구 엘지, 그들은 임금 A를 가지고있다 2N 카드 카드, 디지털 숫자 카드가에 1 - 1 2N 및 카드, 둘로 나누어 이자형 에스 에스 나는 이자형 베시 와 카드 이자형 에스 나는 이자형 엘시 .
그런 다음 그들은 행동의 총 카드 놀이를하기 시작했다 휠, 각 라운드에서, 이자형 에스 에스 나는 이자형 베시 이자형 에스 나는 이자형 엘시 카드, 큰 포인트가 카드를 재생.
마법 이자형 에스 에스 나는 이자형 베시 예측 될 수있다 이자형 에스 나는 이자형 엘시 카드 순서, 그리고 승리에로있다. 확인 이자형 에스 에스 나는 이자형 베시 포인트의 최대 수를 획득 할 수있다.


입력
정수 첫 번째 줄을 ( 1 (50) , 000 ) N (1≤N≤50,000) .
다음 행은 이자형 에스 나는 이자형 엘시 연속 게임 카드를 완성합니다. 이 정보에서 결정하기 쉽다는 것을 유의하시기 바랍니다 이자형 에스 에스 나는 이자형 베시 카드.

출력
라인이 주어집니다 이자형 에스 에스 나는 이자형 베시 포인트의 최대 수를 점수 수 있습니다.


샘플 입력
. 3
. 1
. 6
. 4

샘플 출력
2


데이터 범위 제한



카드의 베시의 손은 , , 5 2,3,5 자신에있어서, , , 5 2,3,5 순차 2 포인트 카드를 얻을 수있다.


문제 해결 아이디어를
욕심.
티안 지의 말의 원칙, 두 질서 큐를 준비합니다.


코드

#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);
}
게시 된 119 개 원래 기사 · 원 찬양 8 · 전망 4912

추천

출처blog.csdn.net/kejin2019/article/details/104975652