1 条题解

  • 0
    @ 2025-8-24 21:45:24

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar NewErA
    **

    搬运于2025-08-24 21:45:24,当前版本为作者最后更新于2017-07-23 16:22:18,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    算是道shui题了吧!

    只要在一开始算出所有牛的最终位置,并从后往前比对即可

    如果前一头牛的最终位置达不到后一头牛,则res++

    否则,将前一头牛的位置设置成和后一头牛相同

    ######注意,这里t的大小达到了10^9,因此要用long long!!!

    附上代码

    ···cpp

    #include<bits/stdc++.h>
    using namespace std;
    long long n,t,last[100005];
    struct cow
    {
        long long spe,pos;
    }a[100005];
    int main()
    {
        cin >> n >> t;
        for(int i=1;i<=n;i++)
        {
            cin >> a[i].pos >> a[i].spe;
            last[i]=a[i].pos+a[i].spe*t;
        }
        int res=1;
        for(int i=n-1;i>=1;i--)
        {
            if(last[i]>=last[i+1])
            {
                last[i]=last[i+1];
            }
            else
            {
                res++;
            }
        }
        cout<< res;
    }
    
    • 1

    信息

    ID
    2175
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    0
    已通过
    0
    上传者