a人左扶手,b人右扶手,c人双扶手,z人不用扶手,求最多几人一起观看电影。

月赛第一次做上了5题!!放上来纪念一下,一道超级细心的分类讨论题,只有你想不到的情况。。。

做之前最好先自己想一会儿,总结出点什么贪心的思想。。。

#include<bits/stdc++.h>
#define mod 1000000007
#define ll unsigned long long
using namespace std;
int main(){
	int t;
	scanf("%d",&t);
	while(t--){
		ll n,m,z,a,b,c;
		cin>>n>>m>>z>>a>>b>>c;
		ll s=z+a+b+c;
		if(z+a+b>=n*m){
			cout<<n*m<<endl;
			continue;
		}
		if(m==1){
			cout<<min(s,n*m)<<endl;
			continue;
		}
		else if(m==2){
			if(a+b<=n){
				ll p=min(c,n);
				cout<<a+b+p+min(z,n*m-a-b-p)<<endl; 
			}
			else{
				cout<<min(n*m,s)<<endl;
			}
			continue;
		}
		if(m%2==1){
			ll s1=min(n,(a+b)/(m-1)); //aaa_bbbb 可以有几行
			ll s2=m,s3=0;
			if(s1<n){
				s2=(a+b)%(m-1);
				s3=max(0ull,n-s1-1);
				if(s2==0){
					s2=m;
					s3++;
				}
			}
			s2=m-s2;
			s1-=max(0ull,a+b-n*(m-1));//可能左侧填满还有多余,就把s1最右列给占了
			ll ss=min(s1,c+z);  //用c和z取填s1最右列
			c-=ss;
			if(c<0){
				z-=-c;
				c=0;
			} 
			ss+=a+b;
			ll f=min(c,s2/2+s2%2+s3*(m/2+m%2)); //c填s2和s3
			ss+=f;
			ss+=min(z,max(0ull,n*m-min(n*m,a+b+min(n,(a+b)/(m-1)))-f));//z填s2和s3
			cout<<ss<<endl;
		}
		else{  //偶数的时候,有一列对于c是多余的,所以尽量填满 
			if(a+b<=n){
				ll p=min(c,m/2*n);
				cout<<a+b+p+min(z,n*m-a-b-p)<<endl; 
			}
			else{
				a-=n;
				if(a<0){
					b-=-a;
					a=0;
				}
				m--;
				ll s1=min(n,(a+b)/(m-1)); //aaa_bbbb 可以有几行
				ll s2=m,s3=0;
				if(s1<n){
					s2=(a+b)%(m-1);
					s3=max(0ull,n-s1-1);
					if(s2==0){
						s2=m;
						s3++;
					}
				}
				s2=m-s2;
				s1-=max(0ull,a+b-n*(m-1));//可能左侧填满还有多余,就把s1最右列给占了
				ll ss=min(s1,c+z);     //用c和z取填s1最右列
				c-=ss;
				if(c<0){
					z-=-c;
					c=0;
				} 
				ss+=a+b;
				ll f=min(c,s2/2+s2%2+s3*(m/2+m%2)); //c填s2和s3
				ss+=f;
				ss+=min(z,max(0ull,n*m-min(n*m,a+b+min(n,(a+b)/(m-1)))-f));
				cout<<ss+n<<endl;
			}
		}
	}
	return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
扶手振动是指椅子等座椅的扶手部分因人体的摇动而产生的微小振动。这种振动通常是由于人的心跳、呼吸和肌肉运动等生理反应所引起的。虽然扶手振动看似微不足道,但实际上它对人的身体健康和舒适感都有着不可忽视的影响。因此,研究扶手振动的影响因素和作用机理,对于改善人们的座椅体验和减轻健康问题具有重要意义。 目前,对于扶手振动的研究主要集中在以下几个方面: 1. 扶手振动的产生机理 扶手振动的产生是由于人的生理反应所致,而其中最主要的因素是心跳和呼吸。研究表明,心跳和呼吸的频率与扶手振动的频率是相近的,因此扶手振动往往与人的生理节律有着密切的关系。此外,肌肉运动和体位变化等因素也会对扶手振动产生影响。 2. 扶手振动的对人体的影响 扶手振动对人体的影响主要体现在以下几个方面: (1)对身体健康的影响:长期接受扶手振动可能会对人的身体健康产生不良影响。研究表明,扶手振动会导致脊柱和关节的负担增加,进而引起骨骼疾病和肌肉疲劳等问题。 (2)对心理健康的影响:扶手振动不仅会影响身体健康,还会对人的心理健康产生一定的影响。长期接受扶手振动可能会导致焦虑、疲劳和注意力不集中等问题,影响人的工作和学习效率。 (3)对舒适感的影响:扶手振动会影响人的座椅体验和舒适感。研究表明,扶手振动的幅度和频率对人的舒适感有着直接的影响。 3. 扶手振动的解决方法 针对扶手振动的问题,目前有以下几种解决方法: (1)减小扶手振动的幅度和频率:通过调整座椅的结构和设计,可以减小扶手振动的幅度和频率,从而改善人的座椅体验和舒适感。 (2)增加座椅的稳定性:增加座椅的稳定性可以减少扶手振动的产生,从而改善人的座椅体验和舒适感。 (3)改变人的体位和姿势:通过改变人的体位和姿势,可以减少扶手振动的产生,从而改善人的座椅体验和舒适感。 综上所述,扶手振动不仅影响人的座椅体验和舒适感,还可能对人的身体健康和心理健康产生不良影响。因此,研究扶手振动的影响因素和作用机理,探索解决方法,对于改善人们的座椅体验和减轻健康问题具有重要意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值