蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:3.合并检测

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:3.合并检测

问题描述:

新冠疫情由新冠病毒引起,最近在 A 国蔓延,为了尽快控制疫情,

A 国准 备给大量民众进病毒核酸检测。然而,用于检测的试剂盒紧缺。

为了解决这一困难,科学家想了一个办法:合并检测。

即将从多个人(k 个)采集的标本放到同一个试剂盒中进行检测。

如果结果为阴性,则说明这 k 个人都是阴性,用一个试剂盒完成了 k 个人的检测。

如果结果为阳性,则说明 至少有一个人为阳性,

需要将这 k 个人的样本全部重新独立检测(从理论上看,

如果检测前 k−1 个人都是阴性可以推断出第 k 个人是阳性,

但是在实际操作中 不会利用此推断,而是将 k 个人独立检测),

加上最开始的合并检测,一共使用 了 k + 1 个试剂盒完成了 k 个人的检测。

A 国估计被测的民众的感染率大概是 1%,呈均匀分布。

请问 k 取多少能 最节省试剂盒?

这是一道结果填空题,你只需要算出结果后提交即可。

本题的结果为一个 整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:

> 我们假设总共有100人,那么患者为1人
> 1. 如果k为10,那么可以分为10组,也就是需要10个试剂,但当检查到有患者的一组时,需要对这组每个人再分别进行一次检测,也就是说还需要10个试剂,总共试剂就为10+10=20
> 2. 如果k为33,那么可以分为4组,33+33+33+1,也就是需要100 / k个试剂+1,当检查到有患者的一组时,需要对每个人进行检测,就是再需要33个试剂
> 
> 所以我们可以推出公式,如果k可以整除100,那么需要总试剂就为100 / k + k
> 如果不能够整除,那么就为 100 / k + 1 + k

代码:

public class Main {
    public static void main(String[] args) throws ParseException {
      int min=0;
      int sum=Integer.MAX_VALUE;
      for(int i=1;i<=100;i++) {
        if(100%i==0) {
          if(100/i+i<sum) {
            sum=100/i+i;
            min=i;
          }
        }
        else {
          if(100/i+1+i<sum) {
            sum=100/i+1+i;
            min=i;
          }
        }
      }
      System.out.println(min);
  }
}

答案:

10


目录
相关文章
|
14天前
|
开发者 图形学 Java
揭秘Unity物理引擎核心技术:从刚体动力学到关节连接,全方位教你如何在虚拟世界中重现真实物理现象——含实战代码示例与详细解析
【8月更文挑战第31天】Unity物理引擎对于游戏开发至关重要,它能够模拟真实的物理效果,如刚体运动、碰撞检测及关节连接等。通过Rigidbody和Collider组件,开发者可以轻松实现物体间的互动与碰撞。本文通过具体代码示例介绍了如何使用Unity物理引擎实现物体运动、施加力、使用关节连接以及模拟弹簧效果等功能,帮助开发者提升游戏的真实感与沉浸感。
30 1
|
14天前
|
开发者 图形学 API
从零起步,深度揭秘:运用Unity引擎及网络编程技术,一步步搭建属于你的实时多人在线对战游戏平台——详尽指南与实战代码解析,带你轻松掌握网络化游戏开发的核心要领与最佳实践路径
【8月更文挑战第31天】构建实时多人对战平台是技术与创意的结合。本文使用成熟的Unity游戏开发引擎,从零开始指导读者搭建简单的实时对战平台。内容涵盖网络架构设计、Unity网络API应用及客户端与服务器通信。首先,创建新项目并选择适合多人游戏的模板,使用推荐的网络传输层。接着,定义基本玩法,如2D多人射击游戏,创建角色预制件并添加Rigidbody2D组件。然后,引入网络身份组件以同步对象状态。通过示例代码展示玩家控制逻辑,包括移动和发射子弹功能。最后,设置服务器端逻辑,处理客户端连接和断开。本文帮助读者掌握构建Unity多人对战平台的核心知识,为进一步开发打下基础。
36 0
|
14天前
|
开发者 图形学 C#
揭秘游戏沉浸感的秘密武器:深度解析Unity中的音频设计技巧,从背景音乐到动态音效,全面提升你的游戏氛围艺术——附实战代码示例与应用场景指导
【8月更文挑战第31天】音频设计在游戏开发中至关重要,不仅能增强沉浸感,还能传递信息,构建氛围。Unity作为跨平台游戏引擎,提供了丰富的音频处理功能,助力开发者轻松实现复杂音效。本文将探讨如何利用Unity的音频设计提升游戏氛围,并通过具体示例代码展示实现过程。例如,在恐怖游戏中,阴森的背景音乐和突然的脚步声能增加紧张感;在休闲游戏中,轻快的旋律则让玩家感到愉悦。
28 0
|
14天前
|
开发者 图形学 C#
深度解密:Unity游戏开发中的动画艺术——Mecanim状态机如何让游戏角色栩栩如生:从基础设置到高级状态切换的全面指南,助你打造流畅自然的游戏动画体验
【8月更文挑战第31天】Unity动画系统是游戏开发的关键部分,尤其适用于复杂角色动画。本文通过具体案例讲解Mecanim动画状态机的使用方法及原理。我们创建一个游戏角色并设计行走、奔跑和攻击动画,详细介绍动画状态机设置及脚本控制。首先导入动画资源并添加Animator组件,然后创建Animator Controller并设置状态间的转换条件。通过编写C#脚本(如PlayerMovement)控制动画状态切换,实现基于玩家输入的动画过渡。此方法不仅适用于游戏角色,还可用于任何需动态动画响应的对象,增强游戏的真实感与互动性。
37 0
|
14天前
|
图形学 开发者
【Unity光照艺术手册】掌握这些技巧,让你的游戏场景瞬间提升档次:从基础光源到全局光照,打造24小时不间断的视觉盛宴——如何运用代码与烘焙创造逼真光影效果全解析
【8月更文挑战第31天】在Unity中,合理的光照与阴影设置对于打造逼真环境至关重要。本文介绍Unity支持的多种光源类型,如定向光、点光源、聚光灯等,并通过具体示例展示如何使用着色器和脚本控制光照强度,模拟不同时间段的光照变化。此外,还介绍了动态和静态阴影、全局光照及光照探针等高级功能,帮助开发者创造丰富多样的光影效果,提升游戏沉浸感。
32 0
|
4月前
|
人工智能 算法 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-992 士兵杀敌(二)
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-992 士兵杀敌(二)
51 1
|
4月前
|
人工智能 算法 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1005 数字游戏
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1005 数字游戏
85 0
|
4月前
|
Java C语言 C++
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1000 kAc给糖果你吃
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1000 kAc给糖果你吃
68 0
|
4月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-999 数的潜能
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-999 数的潜能
68 0
|
4月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-997 粘木棍
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-997 粘木棍
77 0

推荐镜像

更多