1 条题解

  • 0
    @ 2025-8-24 22:27:28

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Maxrage
    AFO|极怒中的C++蒟蒻在此!|最近曲品比较差,大概是膜拜carrotqq与铃酱与兔队与神鱼的次数少了,从今以后每天早中晚各膜拜两次

    搬运于2025-08-24 22:27:28,当前版本为作者最后更新于2021-02-05 11:19:02,作者可能在搬运后再次修改,您可在原文处查看最新版

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

    以下是正文


    在题解区看到一大群大佬的做法,然后蒟蒻就迷茫,一道红题至于吗,所以我决定用个最简单的:按照题目模拟。
    我们用一个图来解释杨样例一:

    首先是1-2,一辆车,2-3,两辆,3-5,...

    然后我们要注意到他的最先开始的和最后结束的时间,在没有车(0)时收费为0,判断该时段有几辆车,然后收费。
    所以可以:

    struct car{
    	int begn; 
    	int endd;
    }k[15];//有struct为何不用呢,多香!
    

    用这一段:

    for(int i=test;i<=teed;i++)
    	{
    		int carliang=0;//车量
    		for(int j=1;j<=3;j++)
    		{
    			if(i>=k[j].begn&&i<k[j].endd)//有新车
    				carliang++;//车量+1
    		}
    		ans+=carliang*price[marx];
    	}
    

    整体代码:

    #include<bits/stdc++.h>//万能头好习惯
    using namespace std;
    struct car{//存储开始与结束时间
    	int begn; 
    	int endd;
    }k[15];
    int price[15];
    int test=999999,teed=0;//开始与结束 
    inline int read()//快读
    {
       int s=0,w=1;
       char ch=getchar();//最快的输入方式
       while(ch<'0'||ch>'9')
       {
         if(ch=='-')w=-1;
    	 ch=getchar();
       }
       while(ch>='0'&&ch<='9') 
         s=s*10+ch-'0',ch=getchar();
       return s*w;
    } 
    int main()
    {
    	for(int i=1;i<=3;i++)
    		price[i]=read();
    	price[0]=0;
    	for(int i=1;i<=3;i++)
    	{
    		k[i].begn=read();k[i].endd=read();
    		if(k[i].begn<=test) test=k[i].begn;
    		if(k[i].endd>=teed) teed=k[i].endd;
    	}
    	int ans=0;
    	for(int i=test;i<=teed;i++)
    	{
    		int carliang=0;//车量
    		for(int j=1;j<=3;j++)
    		{
    			if(i>=k[j].begn&&i<k[j].endd)//有新车
    				carliang++;//车量+1
    		}
    		//cout<<carliang<<endl;
    		ans+=carliang*price[carliang];
    	}
        //判断与收费全过程
    	printf("%d",ans);
    	return 0;
    }
    

    结束了吗?

    没有

    最后提醒几个注意点:

    • endiend_i分钟不收费。
    • 一定注意没车时收费为0。
    • 一定要点赞的。
    • 1

    信息

    ID
    5753
    时间
    1000ms
    内存
    128MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者