zoukankan      html  css  js  c++  java
  • 田继赛马 + 贪心算法

    如果tian最弱的一匹马比king的最弱的一匹马强,那么tian win,

    如果tian最弱的一匹马比king的最弱的一匹马弱,那么tian用这匹马与king最强的一匹马比,而相反tian用自己最强的马和king的这匹弱马相比。tian不输不赢

    如果tian最弱的一匹马比king的最弱的一匹马一样,那么考虑tian和king最强的马,如果tian的最强马给力,那么在这四匹马的较量中,tian可以赢一次。如果king的最强马给力,tian的最弱马与之较量。

    #include<stdio.h>
    
    
    
    int tian[1000];
    
    int king[1000];
    
    
    
    int comp(const void* a, const void * b){
    
        return *(int *)a - *(int *)b;
    
    }
    
    
    
    int main(){
    
        int i, j, s, e, sum, n;
    
        while(scanf("%d", &n) != EOF && n){
    
            for(i = 0; i < n; i++) scanf("%d",     &tian[i]);
    
            for(i = 0; i < n; i++) scanf("%d", &king[i]);
    
            qsort(king, n, sizeof(int), comp);
    
            qsort(tian, n, sizeof(int), comp);
    
            sum = 0;
    
            i = s = 0; j = e = n -1;
    
    
    
            while(i <= j){
    
                if(tian[i] > king[s]){
    
                    sum++; i++; s++;
    
                }else if(tian[i] < king[s]){
    
                    sum--; i++; e--;
    
                }else{
    
                    if(tian[j] > king[e]){
    
                        sum++; j--; e--;
    
                    } else{
    
                        if(tian[i] < king[e])sum--;
    
                        e--; i++;
    
                    }
    
                }
    
            }
    
    
    
            printf("%d\n",200 * sum);
    
            
    
        }
    
    }
  • 相关阅读:
    NOIP2009 靶形数独
    NOIP2014 寻找道路
    NOIP2005 篝火晚会
    NOIP2014 联合权值
    NOIP2011 选择客栈
    luogu2659 美丽的序列
    NOIP2008 传纸条
    vijos1642 班长的任务
    codevs1427 RQNOJ204 特种部队
    AC自动机
  • 原文地址:https://www.cnblogs.com/yujinghui/p/2961675.html
Copyright © 2011-2022 走看看