蓝桥杯历届真题 #食堂(C++,Java)

ops/2025/1/14 18:13:45/

这题没什么好说的
考虑所有情况然后写就完了
虽然赛场上 交完不知道答案(doge)

原题链接

#include<iostream>using namespace std;int main() {int n;cin >> n;//能优先安排6人桌,要先安排6人桌//6人桌可以是2+2+2 或者 3+3 或者4+2//优先用3+3组合,因为3人寝只能凑6人桌//2+2+2 和 4+2 优先用哪个都一样//因为剩下奇数个2还是偶数个2都能去搭配while (n--) {int a2, a3, a4, b4, b6;cin >> a2 >> a3 >> a4 >> b4 >> b6;int res = 0;//先凑6人while (b6) {//3+3if (a3 / 2 > 0 && a3) {res += 6;a3 -= 2;b6 -= 1;continue;}//4+2(2+2+2也可以)if (a4 && a2) {res += 6;a4 -= 1;a2 -= 1;b6 -= 1;continue;}//最后凑2+2+2if (a2 / 3 != 0 && a2) {res += 6;a2 -= 3;b6 -= 1;continue;}//凑不出来6人就break//凑6人2+2+2 或者a3>=2 或者 1个4 1个2if ((a2 == 0 && a3 < 2) || (a2 < 3 && a3 < 2 && a4 == 0))break;}//凑4人while (b4 > 0) {//凑4人桌的优先级也是一样的(找不出来反例)if (a4) {a4 -= 1;res += 4;b4 -= 1;continue;}if (a2 / 2 != 0 && a2) {a2 -= 2;res += 4;b4 -= 1;continue;}//凑不出来4人就break//凑4人 2+2 或者 4if (a2 <= 1 && a4 == 0)break;}//最后盘算坐不满的情况//比如一个6人桌给两个人坐while (b6) {if (a2 && a3) {a2 -= 1;a3 -= 1;res += 5;b6 -= 1;}else if (a4) {a4 -= 1;b6 -= 1;res += 4;}else if (a3) {a3 -= 1;b6 -= 1;res += 3;}else if (a2) {a2 -= 1;b6 -= 1;res += 2;}else break;}while (b4) {if (a3 > 0) {b4 -= 1;a3 -= 1;res += 3;}else if (a2) {b4 -= 1;a2 -= 1;res += 2;}else break;}cout << res << endl;}return 0;
}
java">import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();while (n-- > 0) {int a2 = scanner.nextInt();int a3 = scanner.nextInt();int a4 = scanner.nextInt();int b4 = scanner.nextInt();int b6 = scanner.nextInt();int res = 0;// 先凑6人while (b6 > 0) {// 3+3if (a3 >= 2) {res += 6;a3 -= 2;b6 -= 1;continue;}// 4+2if (a4 > 0 && a2 > 0) {res += 6;a4 -= 1;a2 -= 1;b6 -= 1;continue;}// 2+2+2if (a2 >= 3) {res += 6;a2 -= 3;b6 -= 1;continue;}// 凑不出来6人就breakif ((a2 == 0 && a3 < 2) || (a2 < 3 && a3 < 2 && a4 == 0)) {break;}}// 凑4人while (b4 > 0) {// 凑4人桌的优先级也是一样的(找不出来反例)if (a4 > 0) {a4 -= 1;res += 4;b4 -= 1;continue;}if (a2 >= 2) {a2 -= 2;res += 4;b4 -= 1;continue;}// 凑不出来4人就breakif (a2 <= 1 && a4 == 0) {break;}}// 最后盘算坐不满的情况while (b6 > 0) {if (a2 > 0 && a3 > 0) {a2 -= 1;a3 -= 1;res += 5;b6 -= 1;} else if (a4 > 0) {a4 -= 1;res += 4;b6 -= 1;} else if (a3 > 0) {a3 -= 1;res += 3;b6 -= 1;} else if (a2 > 0) {a2 -= 1;res += 2;b6 -= 1;} else {break;}}while (b4 > 0) {if (a3 > 0) {b4 -= 1;a3 -= 1;res += 3;} else if (a2 > 0) {b4 -= 1;a2 -= 1;res += 2;} else {break;}}System.out.println(res);}scanner.close();}
}

http://www.ppmy.cn/ops/150070.html

相关文章

Bash语言的语法糖

Bash语言的语法糖 引言 在现代编程语言中&#xff0c;“语法糖”是一个非常常见的术语&#xff0c;它指的是那些使代码更加易读、易写的语法特性。尽管这些特性并不改变语言的功能&#xff0c;但它们能显著提升开发者的编程体验。在众多编程语言中&#xff0c;Bash&#xff0…

Linux -- 自定义协议体会序列化和反序列化

思路介绍 网络版计算器&#xff1a; 1、客户端发送 两个操作数 和 操作符&#xff1b; 2、根据协议&#xff0c;在发送时&#xff0c;对数据进行序列化&#xff0c;再加上报头&#xff0c;形成 请求 并发送给 服务器&#xff1b; 3、服务器收到 请求 后&#xff0c;判断收到的 …

HTML实战课堂之简单的拜年程序

一、目录&#xff1a; &#xfffc;&#xfffc; 一、目录&#xff1a; 二、祝福 三&#xff1a;代码讲解 &#xff08;1&#xff09;详细解释&#xff1a; 1.HTML部分 2. CSS部分 三、运行效果&#xff08;随机截图&#xff09;&#xff1a; 四、完整代码&#xff1a; 二、祝福…

3Hive数据抽样

3Hive数据抽样 1 随机抽样2 块抽样3 桶表抽样 当数据规模不断膨胀时&#xff0c;我们需要找到一个数据的子集来加快数据分析效率。因此我们就需要通过筛选和分析数据集为了进行模式 & 趋势识别。目前来说有三种方式来进行抽样&#xff1a;随机抽样&#xff0c;桶表抽样&…

Node.js——fs(文件系统)模块

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1f4c3;个人状态&#xff1a; 研发工程师&#xff0c;现效力于中国工业软件事业 &#x1f680;人生格言&#xff1a; 积跬步…

PySpark用sort-merge join解决数据倾斜的完整案例

假设有两个大表 table1 和 table2 &#xff0c;并通过 sort-merge join 来解决可能的数据倾斜问题。 from pyspark.sql import SparkSession from pyspark.sql.functions import col# 初始化SparkSession spark SparkSession.builder.appName("SortMergeJoinExample&quo…

Blazor开发复杂信息管理系统的优势

随着现代企业信息管理需求的不断提升&#xff0c;开发高效、易维护、可扩展的系统变得尤为重要。在这个过程中&#xff0c;Blazor作为一种新兴的Web开发框架&#xff0c;因其独特的优势&#xff0c;逐渐成为开发复杂信息管理系统的首选技术之一。本文将结合Blazor在开发复杂信息…

IIS安全配置基线

IIS安全配置基线 1. 限制目录的执行权限2. 开启日志记录功能3. 自定义错误页面4. 关闭目录浏览功能5. 停用或删除默认站点6. 删除不必要的脚本映射7. 专职低权限用户运行网站8. 在独立的应用程序池中运行网站 IIS&#xff08;Internet Information Services&#xff09;安全部署…