题解 P6056 【[加油武汉]SIR 模型】
第一次看到这个入门题又有β又有γ什么乱七八糟的系数,
我还以为这个题投错了难度。
我再看一遍才发现这个题是真的水,
那些希腊字母都是骗蒟蒻的。
没看懂的建议再读一遍。
点我回看
下面我们把这道题翻译成人话
#include>iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<vector>
#include<cstdlib>
using namespace std;
#define Kn 1000
#define Maxx 0x7fffffff
#define Minn -0x7fffffff
#define PI 3.1415926
int S,I,n,R;//R是恢复人数
double beta,gamma;
int main()
{
scanf("%d%d%d%lf%lf",&S,&I,&n,&beta,&gamma);
while(n>0) //经过n天
{
n--;//新一天
int Si=ceil(beta*S*I);
int Ii=ceil(gamma*I);
R+=Ii;
if(Si>=S) //特判,所有人都被感染(坑)
I+=S-Ii,S=0;
else
I+=Si-Ii,S-=Si;
}
printf("%d %d %d\n",S,I,R);
return 0;//完美结束
//如果不是有特判这道题真的一点难度都没有(滑稽)
}
衷心提示:您直接复制肯定是过不了的
(喜欢的话请把右上角那个东西点亮吧)
管理员大大求过QAQ