CF1066A Vova and Train(模拟)

大水题。。。

题目要求你求能看到的灯笼数,我们可以分为3部分

  • 总共的灯笼数——————1

  • l 左面的灯笼数(不包括lll)——————2

  • r 左面的灯笼数(包括rrr)——————3

我们知道,由上面的2-3就是被另一列车挡住的灯笼数

所以1-2+3就是答案;

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define rii register int i
#define rij register int j
using namespace std;
int t,len,l,r,v;
void solve()
{
    scanf("%d%d%d%d",&len,&v,&l,&r);
    int sl1=len/v;
    int sl2=(l-1)/v;
    int sl3=r/v;
    sl1-=sl3;
    sl1+=sl2;
    printf("%d
",sl1);
}
int main()
{
    int t;
    scanf("%d",&t);
    for(rii=1;i<=t;i++)
    {
        solve();
    } 
}
原文地址:https://www.cnblogs.com/ztz11/p/9807482.html