第十一屆藍橋杯省賽 C組 真題D: 合併檢測

試題 D: 合併檢測
本題總分:10 分
【問題描述】
新冠疫情由新冠病毒引起,最近在 A 國蔓延,爲了儘快控制疫情,A 國準
備給大量民衆進病毒核酸檢測。
然而,用於檢測的試劑盒緊缺。
爲了解決這一困難,科學家想了一個辦法:合併檢測。即將從多個人(k
個)採集的標本放到同一個試劑盒中進行檢測。如果結果爲陰性,則說明這 k
個人都是陰性,用一個試劑盒完成了 k 個人的檢測。如果結果爲陽性,則說明
至少有一個人爲陽性,需要將這 k 個人的樣本全部重新獨立檢測(從理論上看,
如果檢測前 k 1 個人都是陰性可以推斷出第 k 個人是陽性,但是在實際操作中
不會利用此推斷,而是將 k 個人獨立檢測),加上最開始的合併檢測,一共使用
了 k + 1 個試劑盒完成了 k 個人的檢測。
A 國估計被測的民衆的感染率大概是 1%,呈均勻分佈。請問 k 取多少能
最節省試劑盒?
【答案提交】
這是一道結果填空題,你只需要算出結果後提交即可。本題的結果爲一個
整數,在提交答案時只填寫這個整數,填寫多餘的內容將無法得分。

//#define LOCK
#include<Stdio.h>
int dfs(int n)
{
	int cns=0;
	int s=100;
	cns=(s/n)+n;
	if(s/n!=n)
	{
		cns+=(s%n);
	}
	return cns;

}
int main()
{
   int a=0,min=100,xb=0;
   for(int i=1;i<=100;i++)
   {
   	a=dfs(i);
   	#ifdef LOCK
   	printf("一次採樣%d人 一共需%d測試盒\n",a,i);
   	#endif
   	if(min>a)
   	   {
     	min=a;
        xb=i;
	   } 
	}
	printf("%d\n",xb);
	return 0;		
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章