NYOJ 364 전기 경마

2219 단어 알고리즘nyoj
제목: 전기 와 제 왕 은 각각 N 마리 의 말 을 가지 고 어떻게 경 기 를 할 것 인 가 를 판단 하여 전기 의 순 승 수 를 가장 많이 한다.나 는 이 문제 의 정 수 는 아무리 시합 을 해도 전기의 말 이 가장 큰 가 치 를 발휘 하도록 하 는 것 이 라 고 생각한다.물론 말의 첫 번 째 중요 한 임 무 는 경 기 를 이 기 는 것 이 고 가장 큰 효 익 으로 이 기 는 것 이다. 즉, 상대방 이 자신의 말 에 버 금 가 는 것 이다.그 가 이 임 무 를 완수 하지 못 할 때 는 져 야 하고, 상대방 의 가장 빠 른 말 을 끌 어 들 여 자신의 뒤의 동료 들 에 게 더욱 큰 승리 기 회 를 만들어 야 한다.
1. 느 린 말 은 이 길 수 있 으 면 이 길 수 있 고, 이기 지 못 하면 왕 의 빠 른 말 을 끌 어 들 인 다.
2. 천천히 비 기 면 절대 비 기 면 된다 고 생각 하지 마 세 요. 뒤에 있 는 동료 가 킹 의 이 말 을 이 길 수 있다 면 자신 이 지 는 것 과 비 기 는 결과 가 같 지만 자신 은 빠 른 말 한 마 리 를 물 에 빠 뜨 릴 수 있 기 때 문 입 니 다.
3. 그리고 함부로 방수 하지 마 세 요. 만약 우리 측 빠 른 말 이 맞은편 빠 른 말 을 이 길 수 있다 면 희생 할 필요 가 없습니다. 우리 측 빠 른 말의 재능 을 낭비 하지 마 세 요. 동전 을 지지 않 습 니 다.
(두 개의 태그 하나, 첫 번 째 꼬리 3 중 상황 고려)
#include<stdio.h>
#include<algorithm>
using namespace std;
int t[1005],k[1005],win,lose;
int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        for(int i=0;i<n;i++)
            scanf("%d",&t[i]);
        for(int i=0;i<n;i++)
            scanf("%d",&k[i]);
        sort(t,t+n);
        sort(k,k+n);
        win=lose=0;
        int t_slow=0,k_slow=0;
        int t_quick=n-1,k_quick=n-1;
        while(t_slow<=t_quick)
        {
            if(t[t_slow]>k[k_slow])   //t     king               {
               {
                    win++;
                    t_slow++;
                    k_slow++;
               }
            else if(t[t_slow]<k[k_slow])//  pk  king           king     
                {
                lose++;
                t_slow++;
                k_quick--;
                }
            else//    
                {
                    if(t[t_quick]>k[k_quick])//      
                    {
                        win++;
                        t_quick--;
                        k_quick--;
                    }
                    else
                    {

                       if(t[t_slow]<k[k_quick])//  
                            lose++;
                        t_slow++;
                        k_quick--;
                    }
                }
        }
        printf("%d
",(win-lose)*200); } return 0; }

좋은 웹페이지 즐겨찾기