7-58 感染预测 (10分)
某人喜欢作死,经常自己推翻自己说的话,现在假设某人的变脸周期是10天,每10天就翻一次脸,开始的时候决定不戴口罩,十天后又决定戴口罩,二十天后又决定不戴口罩。假设病毒传播系数是RO,戴口罩之后RO会减少到一半。你能预测在某人的带领下的感染数据吗?RO=1,表示每一个病人可以传染1个正常人。
输入格式:
在一行中输入三个数据,分别是感染人数N,天数T,传播系数RO。
输出格式:
对每一组输入,预测在第T天的感染人数,输出。 如果感染人数达到或者超过了人数(3.3亿),那就输出“MAGA? Bazinga!!”
输入样例:
在这里给出一组输入。例如:
100 15 1.2
输出样例:
在这里给出相应的输出。例如:
2781787
代码如下
#include <stdio.h>
#include <math.h>
#include<string.h>
#define eps 0.000001
int main()
{
long long int t,i,k,n;
double ro;
scanf("%lld %lld %lf",&n,&t,&ro);
if(t<=10)
{
for(i=1;i<=t;i++)
n=(n+n*ro)+eps;
}
else
{
k=20;
for(i=1;i<=10;i++)
n=n+n*ro+eps;
ro=ro/2;
t=t-10;
for(i=1;i<=t;i++)
{
n=(n+n*ro)+eps;
k--;
if(k==0)
{
k=20;
ro=ro/2.0;
}
}
}
if(n<330000000)
printf("%lld",n);
else
printf("MAGA? Bazinga!!");
return 0;
}