zoukankan      html  css  js  c++  java
  • 洛谷 P5016 龙虎斗

    输入兵营总数、兵营人数、以m分界。

    然后输入s1个兵到了p1兵营。 最终我们要求的是把s2个兵放到哪个兵营使龙虎双方气势差距最小。

    第一要把每个兵营的气势算出来,并且加到它所属的阵营里(<m是龙,>m是虎,属于m不是龙也不是虎)

    然后就是考虑天降神兵了,它们到达的兵营所属阵营判断条件和上面一样

    最后我们一个一个考虑把手中p2个兵放到哪个兵营最好。

    code:

    #include <cstdio>
    #include <climits>
    
    typedef long long LL;
    
    const int N = 100010;
    
    int n, m, p1;
    LL c[N], s1, s2;
    
    LL ABS(LL x) { return x < 0 ? -x : x; }
    
    int main() {
        //freopen("fight.in", "r", stdin);
        //freopen("fight.out", "w", stdout);
    
        scanf("%d", &n);
        for (int i = 1; i <= n; ++i) {
            scanf("%lld", &c[i]);
        }
        scanf("%d%d%lld%lld", &m, &p1, &s1, &s2);
        LL sum = (m - p1) * s1, best = LLONG_MAX; int k = -1;
        for (int i = 1; i <= n; ++i) {
            sum += (m - i) * c[i];
        }
        for (int i = 1; i <= n; ++i) {
            LL tmp = ABS(sum + (m - i) * s2);
            if (tmp < best) {
                best = tmp;
                k = i;
            }
        }
        printf("%d
    ", k);
    
        return 0;
    }
    
    如果大家满意就关注我吧!
  • 相关阅读:
    LINQ查询操作符之First、FirstOrDefault、Last、LastOrDefault、ElementAt、ElementAtOrDefault、Contains、Any、All、Coun
    .Net 使用的快捷键
    P2073 送花
    洛谷P1514 引水入城
    花园
    八数码难题
    并查集题目整理
    树链剖分(强势借鉴)
    模拟题
    考试整理
  • 原文地址:https://www.cnblogs.com/yihengblog/p/10123872.html
Copyright © 2011-2022 走看看