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

server/2025/1/19 9:55:49/

这题没什么好说的
考虑所有情况然后写就完了
虽然赛场上 交完不知道答案(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/server/159594.html

相关文章

Windows 上安装 MongoDB 的 zip 包

博主介绍&#xff1a; 大家好&#xff0c;我是想成为Super的Yuperman&#xff0c;互联网宇宙厂经验&#xff0c;17年医疗健康行业的码拉松奔跑者&#xff0c;曾担任技术专家、架构师、研发总监负责和主导多个应用架构。 近期专注&#xff1a; RPA应用研究&#xff0c;主流厂商产…

高等数学学习笔记 ☞ 定积分的定义与性质

1. 定积分的定义 设函数在闭区间上有界。在闭区间上任意插入若干个分点&#xff0c;即&#xff0c; 此时每个小区间的长度记作(不一定是等分的)。然后在每个小区间上任意取&#xff0c;对应的函数值为。 为保证每段的值(即矩形面积)无限接近于函数与该区间段所围成的面积&…

新星杯-ESP32智能硬件开发--ESP32系统

本博文内容导读&#x1f4d5;&#x1f389;&#x1f525; 1、ESP32芯片和系统架构进行描述&#xff0c;给出ESP32系统的地址映射规则。 2、介绍ESP32复位及时钟定时具体功能&#xff0c;方便后续开发。 3、介绍基于ESP32开发板使用的底层操作系统&#xff0c;对ESP32应用程序开…

设计模式-结构型-装饰器模式

装饰器模式&#xff08;Decorator Pattern&#xff09;是结构型设计模式中的一种&#xff0c;它允许你通过将对象封装在一个新的对象中&#xff0c;来动态地添加新的功能&#xff0c;而无需改变原对象的结构。装饰器模式的核心思想是“将功能附加到对象上”&#xff0c;它是一种…

开源模型应用落地-CodeQwen模型小试-SQL专家测试(二)

一、前言 代码专家模型是基于人工智能的先进技术&#xff0c;它能够自动分析和理解大量的代码库&#xff0c;并从中学习常见的编码模式和最佳实践。这种模型可以提供准确而高效的代码建议&#xff0c;帮助开发人员在编写代码时避免常见的错误和陷阱。 通过学习代码专家模型&a…

[BrainShadow-V1] VR头戴设备统计报告

Brain-Shadow-V1 EventVR headsetsReported byXiao enDate2025/01/15Version1.0 HTC Vive Pro 2 Pro HTC Vive Pro 2 是一款高端虚拟现实头显&#xff0c;配备双 2.5K 显示屏&#xff0c;组合分辨率达到 48962448&#xff0c;提供 120 的视场角和 120Hz 的刷新率。该设备支持…

基于微信小程序的驾校预约管理系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…

SpringBoot 项目中配置日志系统文件 logback-spring.xml 原理和用法介绍

在 Spring Boot 项目中&#xff0c;logback-spring.xml 是用于配置日志系统的文件&#xff0c;是基于 Logback 框架&#xff0c;主要有以下几点功能&#xff1a; 文章目录 1、日志输出控制2、日志格式设置3、日志输出位置4、日志滚动策略5、日志级别调整6、日志条件过滤7、使用…