1 条题解
-
0
自动搬运
来自洛谷,原作者为

yechenguo
ด้้้้้็้้้็็็็็้้้้้็็็็็้้้้้้็็็็็้้้้้็็็็็้้้้้้็็็็็้้้้้็็็็็้้้้้้็็็็็้้้้้็็็็็้้้้吼吼吼||支持互关(私)||清团杀关(误杀私)||成功被卡蓝勾线搬运于
2025-08-24 23:03:45,当前版本为作者最后更新于2024-09-15 19:25:48,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
本道题可以看作一道大模拟。我们要先考虑放完的情况,即:
,,,,;
然后考虑只剩一个空位的情况:
桌 用 的人, 桌 用 的人,
最后大致是个补空:
除了一个 人寝室可以合用一个 人桌外,为一个寝室用一个桌。
最后上代码!!!
#include<bits/stdc++.h> using namespace std; int t,a2,a3,a4,b4,b6; int main() { cin>>t; while(t--) { int cnt=0; cin>>a2>>a3>>a4>>b4>>b6; while(b4>0&&a4>0)//4人寝室用4人桌 { a4--;b4--; cnt+=4; } while(b6>0&&a2>0&&a4>0)//2人寝室和4人寝室用6人桌 { a4--;a2--;b6--; cnt+=6; } while(b4>0&&a2-1>0)//两个2人寝室用4人桌 { a2-=2;b4--; cnt+=4; } while(b6>0&&a3-1>0)//两个3人寝室用6人桌 { a3-=2;b6--; cnt+=6; } while(b6>0&&a2-2>0)//三个2人寝室用6人桌 { a2-=3;b6--; cnt+=6; } while(b4>0&&a3>0)//3人寝室用4人桌 { a3--;b4--; cnt+=3; } while(b6>0&&a3>0&&a2>0)//2人寝室和3人寝室用6人桌 { a3--;a2--;b6--; cnt+=5; } while(b6>0&&a2-1>0)//两个2人寝室用6人桌 { a2-=2;b6--; cnt+=4; } while(b4>0&&a2>0)//2人寝室用4人桌 { a2--;b4--; cnt+=2; } while(b6>0&&a4>0)//4人寝室用6人桌 { a4--;b6--; cnt+=4; } while(b6>0&&a3>0)//3人寝室用6人桌 { a3--;b6--; cnt+=3; } while(b6>0&&a2>0)//2人寝室用6人桌 { a2--;b6--; cnt+=2; } cout<<cnt<<endl; } return 0; }
- 1
信息
- ID
- 10685
- 时间
- 3000ms
- 内存
- 512MiB
- 难度
- 3
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者