from random import*
from time import*
#sj时间,第几天
#liang粮食数
#sc每日获得粮食数
#linshu人数
#zyjs职业对应是否解锁
#jssj石器时代是否解锁
#bili职业对应人数
#x每日出生人数
#y每日职业变为猎人数
#yi疫情级数
#i疫情情况
#jian角色对应生病数
#yqxs疫情概率系数
##jd文明进程
#shou播种粮食列表5天
#shl当日收获粮食
#ngjia农耕增加
#ng农耕技术
print("本游戏由泡长工作室出品")
zhiye=["无业者","猎灵","石匠","催芽师"]
zyjs=[1,1,0,0]
hei=randint(10,20)
bili=[hei,int(hei*7/3),0,0]
linshu=bili[0]+bili[1]
jssj=0
jd=0
liang=randint(5000,8000)########################不可篡改
jian=[0,0,0,0]
yqxs=1
huo=1
ill=[0,0,0,0]
x=0
y=0
ng=0
ngjia=0
l=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
print("在模糊的记忆中,你拥有了生命。仿佛是突然有了视觉,但又不显得突然。")
print("生命!")
print("在无意间,一滴晶莹的液体滴入了你的嘴里")
player=input("输入你的名字")
print(player,"你出生在一个部落里,你们以“灵”自称。")
print("你们的部落没有贫富差别(当然你本不应该知道这个词),灵们都过着共同的生活。")
print("你的父亲母亲都是“猎灵”,这是一种职业,是灵们唯一的职业")
print("猎灵是你们部落的生产力,他们打猎、采果为群落补充食物(每天获得0-3粮食)")
print("当然,部落中还有像你一样的无业者")
print("现在部落有"+str(linshu)+"灵,其中有无业者"+str(bili[0])+"灵,猎灵"+str(bili[1])+"灵")
print('你们部落现在有'+str(liang)+"粮食,每人每天需要1粮食")
print("部落会出现“饥荒”和“疫”,前者是粮食不足,为了保证部落生存,出现这种情况只能优先让无业者被饿死。后者是灵“中邪”而身体不适,有时邪气会扩散。此外,得到的粮食还可能在20天后发霉")
import os
while huo==1:
    os.system("start cmd")
    sj=0
while huo==1:
    ill=[0,0]
    lll=0
    input()
    print("")
    sj+=1
    if bili[0]>=4:
        y=randint(0,4)
    else:
        y=0
    if linshu>=2:
        x=randint(y,6)
    else:
        x=0
    bili[1]+=y
    linshu+=x
    bili[0]+=x-y
    print("第"+str(sj)+"天")
    print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵")
    jian=[0,0,0]
    yi=randint(yqxs,1000)
    if linshu>=2 and bili[0]>=2 and bili[1]>=2 :
        if (yi<=750):
            yi=0
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1
        elif (yi>=751) and(yi<=825):
            yi=1
            yqxs=125
        elif (yi>=826)and(yi<=900):
            yi=2
            yqxs=300
        elif (yi>=901)and(yi<=950):
            yi=3
            yqxs=675
        elif (yi>=951)and(yi<=975):
            yi=4
            yqxs=775
        elif (yi>=976)and(yi<=989):
            yi=5
            yqxs=825
        elif(yi>=990)and(yi<=999):
            yi=6
            yqxs=875
        else:
            yi=7
            yqxs=950##七级疫情
        if yi==0:
            print("今日无“疫情”出现")
        if yi==1:
            i=randint(1,linshu)
            if i<=bili[0]:
                print("今日一名无业者中魔,处于生病状态")
                jian[0]=1
            elif i<=bili[0]+bili[1]:
                print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=1
        if yi==2:
            i=randint(1,linshu*linshu)
            if i<=bili[0]*bili[0]:
                print("今日两名无业者中魔,处于生病状态")
                jian[0]=2
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            else:
                print("今日一名无业者中魔,一名猎灵中魔,处于生病状态暂时无法捕猎")
                jian[1]=1
                jian[0]=1
        if yi==3:
            i=randint(1,linshu)
            linshu-=1
            if i<=bili[0]:
                print("今日出现严重“疫”,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重“疫”,一名猎灵死亡")
                bili[1]-=1
        if yi==4:
            i=randint(1,linshu)
            linshu-=1
            if i<=bili[0]:
                print("今日出现严重“疫”,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重“疫”,一名猎灵死亡")
                bili[1]-=1
                i=randint(1,linshu*linshu)
            if i<=bili[0]*bili[0]:
                print("此外还有两名无业者中魔,处于生病状态")
                jian[0]=2
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            else:
                print("此外还有一名无业者中魔,一名猎灵中魔,处于生病状态暂时无法捕猎")
                jian[1]=1
                jian[0]=1    
        if yi==5:
            linshu-=2
            i=randint(1,linshu*linshu)
            if i<=bili[0]*bili[0]:
                print("今日出现严重疫情,两名无业者死亡")
                bili[0]-=2
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,两名猎灵死亡")
                bili[1]-=2
            else:
                print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
                bili[1]-=1
                bili[0]-=1
        if yi==6 :
            ill[0]=randint(0,int((bili[0]+1)/2))
            ill[1]=randint(0,int((bili[1]+1)/2))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            linshu-=ill[1]+ill[0]
            ill[0]=randint(0,int((bili[0]+1)/3))
            ill[1]=randint(0,int((bili[1]+1)/3))
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
            jian[1]=ill[1]
            jian[0]=ill[0]
            
        if yi==7:
            ill[0]=randint(0,int(bili[0]))
            ill[1]=randint(0,int(bili[1]))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            linshu-=ill[1]+ill[0]
            if linshu>=1:
                ill[0]=randint(0,int((bili[0]+1)/2))
                ill[1]=randint(0,int((bili[1]+1)/2))
                print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
                jian[1]=ill[1]
                jian[0]=ill[0]

    else:
        if yi>=900:
            ill[0]=randint(0,int(bili[0]))
            ill[1]=randint(0,int(bili[1]))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            linshu-=ill[1]+ill[0]
            if linshu>=1:
                ill[0]=randint(0,int((bili[0]+1)/2))
                ill[1]=randint(0,int((bili[1]+1)/2))
                print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
                jian[1]=ill[1]
                jian[0]=ill[0]



        
    liang-=linshu
    sc=randint(0,3*(bili[1]-jian[1]))
    liang+=sc#
    l[20]=sc-linshu
    for i in range(0,20):
        l[i]=l[i+1]
    if(l[0]>0):
        lll=1
        if(liang<0):
            l[0]=int(0.1*l[0])+1
        elif(l[0]>0.5*liang):
            l[0]=randint(int(0.2*liang),int(0.5*liang))+1
        qwertyu=randint(1,l[0])
        liang-=qwertyu
    print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
    if(lll):
        print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
    else:
        print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
    if liang<0:
        linshu-=0-liang
        print("大饥荒!")
        if (bili[0]+liang>=0):
            bili[0]+=liang
            print("有"+str(0-liang)+"个无业者被饿死")
            print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
        elif bili[0]+bili[1]+liang>0:
            print("有"+str(bili[0])+"个无业者被饿死,"+str(0-bili[0]-liang)+"个猎灵被饿死")
            bili[1]+=bili[0]+liang
            bili[0]-=bili[0]
            print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
            
        else:

            print("现有0灵,0个无业者,0个猎灵")
            print("灵灭绝了!")
            bili[0]=0
            bili[1]=0
            huo=0
            break
        liang=0
    jssj=randint(1,2)##石器时代
    if jssj==1 and bili[1]>=1:
        print("一位猎灵制造出一件石器,发现对捕猎有巨大帮助")
        print("灵进入石器时代!")
        print("这个猎灵变为石匠")
        print("石匠:专门为猎灵制造石器,每一个石匠可以给两个猎灵提供武器,增加其收入。一个猎灵只能用一个石器。(所以石匠数量最好小于猎人的一半)")
        zyjs[2]=1
        bili[2]=1
        bili[1]-=1
        sj+=1
        jd+=1
        break
while huo==1 and jssj==1 and jd==1:    
    
    input()
    print("")
    print("第"+str(sj)+"天")
    ill=[0,0,0]
    lll=0
    
    sj+=1
    
    if bili[0]>=4:
        y=randint(0,4)
    else:
        y=0
    if linshu>=2:
        x=randint(y,6)
    else:
        x=0
    bili[1]+=y
    bili[0]+=x-y
    if bili[2]<=int(bili[1]/2):
        z=randint(0,(int(bili[1]/2)-bili[2]))
        bili[1]-=z
        bili[2]+=z
    else:
        if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
            z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
            bili[1]+=z
            bili[2]-=z
            z=0-z
        else:
            z=randint(0,bili[2])
            bili[1]+=z
            bili[2]-=z
            z=0-z
    linshu+=x
    if z<0:
        print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵")
        
    else:
        print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠")
    jian=[0,0,0]
    yi=randint(yqxs,1000)
    if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2:
        ill=[0,0,0]
        if (yi<=750):
            yi=0
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1
        elif (yi>=751) and(yi<=825):
            yi=1
            yqxs=125
        elif (yi>=826)and(yi<=900):
            yi=2
            yqxs=300
        elif (yi>=901)and(yi<=950):
            yi=3
            yqxs=675
        elif (yi>=951)and(yi<=975):
            yi=4
            yqxs=775
        elif (yi>=976)and(yi<=989):
            yi=5
            yqxs=825
        elif(yi>=990)and(yi<=999):
            yi=6
            yqxs=875
        else:
            yi=7
            yqxs=950##七级疫情
        if yi==0:
            print("今日无“疫情”出现")
        elif yi==1:
            i=randint(1,linshu)
            if i<=bili[0]:
                print("今日一名无业者中魔,处于生病状态")
                jian[0]=1
            elif i<=bili[0]+bili[1]:
                print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=1
            else:
                print("今日一名石匠中魔,处于生病状态")
                jian[2]=1
        elif yi==2:
            i=randint(1,(linshu)*(linshu))
            if i<=bili[0]*bili[0]:
                print("今日两名无业者中魔,处于生病状态")
                jian[0]=2
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名石匠中魔,处于生病状态")
                jian[2]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
                print("今日一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
            else:
                print("今日一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
        elif yi==3:#
            i=randint(1,linshu)
            linshu-=1
            if i<=bili[0]:
                print("今日出现严重“疫”,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重“疫”,一名猎灵死亡")
                bili[1]-=1
            else:
                print("今日出现严重“疫”,一名石匠死亡")
                bili[2]-=1
        elif yi==4:
            i=randint(1,linshu)
            linshu-=1
            j=randint(1,linshu*linshu)
            if i<=bili[0]:
                print("今日出现严重“疫”,一名无业者死亡")
                bili[0]-=1
            elif i<=(bili[1]+bili[0]):
                print("今日出现严重“疫”,一名猎灵死亡")
                bili[1]-=1
            else:
                print("今日出现严重“疫”,一名石匠死亡")
                bili[2]-=1
            if j<=bili[0]*bili[0]:
                print("此外还有两名无业者中魔,处于生病状态")
                jian[0]=2
            elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名石匠中魔,处于生病状态")
                jian[2]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
                print("此外还有一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("此外还有一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
               
            else:
                print("此外还有一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
                
        elif yi==5:
            linshu-=2
            i=randint(1,(linshu)*(linshu))
            if i<=bili[0]*bili[0]:
                print("今日出现严重疫情,两名无业者死亡")
                bili[0]-=2
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,两名猎灵死亡")
                bili[1]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,两名石匠死亡")
                bili[2]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
                print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
                bili[1]-=1
                bili[0]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
                bili[2]-=1
                bili[0]-=1
                
            else:
                print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
                bili[2]-=1
                bili[1]-=1
                
        elif yi==6:
            ill[0]=randint(0,int((bili[0]+1)/2))
            ill[1]=randint(0,int((bili[1]+1)/2))
            ill[2]=randint(0,int((bili[2]+1)/2))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            bili[2]-=ill[2]
            linshu-=ill[1]+ill[0]+ill[2]
            ill[0]=randint(0,int((bili[0]+1)/3))
            ill[1]=randint(0,int((bili[1]+1)/3))
            ill[2]=randint(0,int((bili[2]+1)/3))
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
            jian[1]=ill[1]
            jian[0]=ill[0]
            jian[2]=ill[2]
            
        elif yi==7:
            ill[0]=randint(0,int(bili[0]))
            ill[1]=randint(0,int(bili[1]))
            ill[2]=randint(0,int(bili[2]))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡"+str(ill[2])+"名石匠死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            bili[2]-=ill[2]
            linshu-=ill[1]+ill[0]+ill[2]
            if linshu>=1:
                ill[0]=randint(0,int((bili[0]+1)/2))
                ill[1]=randint(0,int((bili[1]+1)/2))
                ill[2]=randint(0,int((bili[2]+1)/2))
                print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
                jian[1]=ill[1]
                jian[0]=ill[0]
                jian[2]=ill[2]
    else:
        if yi>=900:
            ill[0]=randint(0,int(bili[0]))
            ill[1]=randint(0,int(bili[1]))
            ill[2]=randint(0,int(bili[2]))
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡"+str(ill[2])+"名石匠死亡")
            bili[1]-=ill[1]
            bili[0]-=ill[0]
            bili[2]-=ill[2]
            linshu-=ill[1]+ill[0]+ill[2]
            if linshu>=1:
                ill[0]=randint(0,int((bili[0]+1)/2))
                ill[1]=randint(0,int((bili[1]+1)/2))
                ill[2]=randint(0,int((bili[2]+1)/2))
                print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
                jian[1]=ill[1]
                jian[0]=ill[0]
                jian[2]=ill[2]


        
    liang-=linshu
    if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
        sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
    else:
        sc=randint(0,5*(bili[1]-jian[1]))
    liang+=sc#
    l[20]=sc-linshu
    for i in range(0,20):
        l[i]=l[i+1]
    if(l[0]>0):
        lll=1
        if(liang<0):
            l[0]=int(0.1*l[0])+1
        elif(l[0]>0.5*liang):
            l[0]=randint(int(0.2*liang),int(0.5*liang))+1
        qwertyu=randint(1,l[0])
        liang-=qwertyu
    print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠")
    if(lll):
        print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
    else:
        print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
    if liang<0:
        liang=-liang
        linshu-=liang
        print("大饥荒!")
        hun=[0,0,0]
        if (bili[0]>=liang):
            bili[0]-=liang
            print("有"+str(liang)+"个无业者被饿死")
            print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠")
            liang=0
        elif linshu>0:
            liang-=bili[0]
            hun[0]=bili[0]
            if bili[2]>int(bili[1]/2):
                
                hun[2]+=bili[2]-int(bili[1]/2)
                liang-=hun[2]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                bili[2]-=hun[2]
                bili[1]-=hun[1]
                bili[0]-=hun[0]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠")
            else:
                
                hun[1]-=bili[2]-int(bili[1]/2)
                liang-=hun[1]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                bili[2]-=hun[2]
                bili[1]-=hun[1]
                bili[0]-=hun[0]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠")
            liang=0

        else:

            print("现有0灵,0个无业者,0个猎灵,0个石匠")
            print("灵灭绝了!")
            bili[0]=0
            bili[1]=0
            bili[2]=0
            liang=0
            huo=0
            break
    jssj=randint(1,1)##########判断进入农耕
    if jssj==1 and bili[0]>=1:
        print("在灵的日常生活中,灵发现采集的果实仍在地上过一段时间就会“发芽”,发芽后又会长出一些果实")
        print("经过尝试,一只灵已经能够自由“催芽”,这样就可以简单获得持续的粮食而不用寻找采集或者捕猎")
        
        print("灵进入农耕时代!")
        print("这个发现者原本是无业者,现在变为催芽师")
        print("催芽师:每天播种花1粮食,5天后收获0-10粮食(提示:数量会随季节变化)")########补充
        print("偷偷科普一些东西(反正现在没有帮助):")
        print("时间mod100计算季节,0~24春,25~49夏,50~74秋,75~99冬")
        zyjs[3]=1
        bili[3]=1
        bili[0]-=1
        jd+=1
        break
shou=[0,0,0,0,0]
shl=0
while huo==1 and jssj==1 and jd==2:
    if linshu!=bili[0]+bili[1]+bili[2]+bili[3]:
        print("代码出BUG,灵灭绝了")
        huo=0
        break
    input()
    print("")
    
    ill=[0,0,0]
    lll=0
    
    print("第"+str(sj)+"天")
    sj+=1
    if bili[0]>=4:
        y=randint(0,4)
    else:
        y=0
    if linshu>=2:
        x=randint(y,6)
    else:
        x=0
    bili[1]+=y
    bili[0]+=x-y
    if liang>=linshu:
        w=randint(-int(bili[3]/5),int((bili[1]+1)/2))###猎给w个农
    else:
        w=randint(-int(bili[3]),0)###农给-w个猎
    bili[1]-=w
    bili[3]+=w
    if bili[2]<=int(bili[1]/2):
        z=randint(0,(int(bili[1]/2)-bili[2]))
        bili[1]-=z
        bili[2]+=z
    else:
        if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
            z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
            bili[1]+=z
            bili[2]-=z
            z=0-z
        else:
            z=randint(0,bili[2])
            bili[1]+=z
            bili[2]-=z
            z=0-z
    linshu+=x

    if w<0:
        if z<0:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(-w)+"个催芽师变为猎灵")
        else:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(-w)+"个催芽师变为猎灵")
    else:
        if z<0:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(w)+"个猎灵变为催芽师")
            
        else:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(w)+"个猎灵变为催芽师")
  
    jian=[0,0,0,0]
    ill=[0,0,0,0]
    yi=randint(yqxs,1000)
    if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2 and bili[3]>=2:
        ill=[0,0,0,0]
        if (yi<=750):
            yi=0
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1
        elif (yi>=751) and(yi<=825):
            yi=1
            yqxs=125
        elif (yi>=826)and(yi<=900):
            yi=2
            yqxs=300
        elif (yi>=901)and(yi<=950):
            yi=3
            yqxs=675
        elif (yi>=951)and(yi<=975):
            yi=4
            yqxs=775
        elif (yi>=976)and(yi<=989):
            yi=5
            yqxs=825
        elif(yi>=990)and(yi<=999):
            yi=6
            yqxs=875###原875
        else:
            yi=7
            yqxs=950##原950
        if yi==0:
            print("今日无“疫情”出现")
        elif yi==1:
            i=randint(1,linshu)
            if i<=bili[0]:
                print("今日一名无业者中魔,处于生病状态")
                jian[0]=1
            elif i<=bili[0]+bili[1]:
                print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日一名石匠中魔,处于生病状态")
                jian[2]=1
            else:
                print("今日一名催芽师中魔,处于生病状态")
                jian[3]=1
        elif yi==2:##(a+b+c+d)^2=Σa^2+Σ2ab
            i=randint(1,(linshu)*(linshu))
            
            if i<=bili[0]*bili[0]:
                print("今日两名无业者中魔,处于生病状态")
                jian[0]=2
            
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名石匠中魔,处于生病状态")
                jian[2]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("今日两名催芽师中魔,处于生病状态")
                jian[2]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("今日一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("今日一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("今日一名无业者中魔,一名催芽师中魔")
                jian[3]=1
                jian[0]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("今日一名猎灵中魔,一名催芽师中魔")
                jian[3]=1
                jian[1]=1
            else:
                print("今日一名石匠中魔,一名催芽师中魔")
                jian[3]=1
                jian[2]=1
        elif yi==3:#
            i=randint(1,linshu)
            linshu-=1
            if i<=bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=1
            else:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[3]-=1
            
        elif yi==4:
            i=randint(1,linshu)
            linshu-=1
            j=randint(1,linshu*linshu)
            if i<=bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=1
            else:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[3]-=1
            if j<=bili[0]*bili[0]:
                print("此外还有两名无业者中魔,处于生病状态")
                jian[0]=2
            
            elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名石匠中魔,处于生病状态")
                jian[2]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("此外还有两名催芽师中魔,处于生病状态")
                jian[2]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("此外还有一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("此外还有一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("此外还有一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("此外还有一名无业者中魔,一名催芽师中魔")
                jian[3]=1
                jian[0]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("此外还有一名猎灵中魔,一名催芽师中魔")
                jian[3]=1
                jian[1]=1
            else:
                print("此外还有一名石匠中魔,一名催芽师中魔")
                jian[3]=1
                jian[2]=1
                
        elif yi==5:
            linshu-=2
            i=randint(1,(linshu)*(linshu))
            if i<=bili[0]*bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=2
            
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[2]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
                bili[1]-=1
                bili[0]-=1
            
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
                bili[2]-=1
                bili[0]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
                bili[2]-=1
                bili[1]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("今日出现严重疫情,一名无业者死亡,一名催芽师死亡")
                bili[3]-=1
                bili[0]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("今日出现严重疫情,一名猎灵死亡,一名催芽师死亡")
                bili[3]-=1
                bili[1]-=1
            else:
                print("今日出现严重疫情,一名石匠死亡,一名催芽师死亡")
                bili[3]-=1
                bili[2]-=1
                ############################################OK
        elif yi==6:
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/3))
                jian[i]=ill[i]
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
            
        elif yi==7:
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i])))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                jian[i]=ill[i]
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
    else:
        if yi>=900:
            yqxs=500
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                jian[i]=ill[i]
            if linshu==0:
                print("现有0灵,0个无业者,0个猎灵")
                print("灵灭绝了!")
                bili[0]=0
                bili[1]=0
                bili[2]=0
                bili[3]=0
                liang=0
                huo=0
                break
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
        else:
            print("今日无疫情出现")
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1

    liang-=linshu
    if sj%100<=24:
        shl=randint(shou[4],shou[4]*4)
    elif sj%100<=49:
        shl=randint(0,shou[4]*3)
    elif sj%100<=74:
        shl=randint(shou[4]*5,shou[4]*10)
    else:
        shl=randint(0,shou[4]*2)
    for i in [4,3,2,1]:
        shou[i]=shou[i-1]
    shou[0]=bili[3]-jian[3]
    liang-=bili[3]-jian[3]
    liang+=shl
    if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
        sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
    else:
        sc=randint(0,5*(bili[1]-jian[1]))
    liang+=sc#
    sc+=shl
    l[20]=sc-linshu
    sc-=shl
    for i in range(0,20):
        l[i]=l[i+1]
    if(l[0]>0):
        lll=1
        if(liang<0):
            l[0]=int(0.1*l[0])+1
        elif(l[0]>0.5*liang):
            l[0]=randint(int(0.2*liang),int(0.5*liang))+1
        qwertyu=randint(1,l[0])
        liang-=qwertyu
    
    print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
    if(lll):
        print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
    else:
        print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
    if liang<0:
        liang=-liang
        linshu-=liang
        print("大饥荒!")
        hun=[0,0,0,0]
        if (bili[0]>=liang):
            bili[0]-=liang
            print("有"+str(liang)+"个无业者被饿死")
            print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            liang=0##催芽师没编完
        elif bili[0]+bili[3]>=liang:
            liang-=bili[0]
            bili[3]-=liang
            print("有"+str(bili[0])+"个无业者被饿死,有"+str(liang)+"个催芽师被饿死")
            bili[0]=0
            liang=0
        elif linshu>0:
            liang-=bili[0]
            hun[0]=bili[0]
            liang-=bili[3]
            hun[3]=bili[3]
            if bili[2]>int(bili[1]/2):
                
                hun[2]+=bili[2]-int(bili[1]/2)
                liang-=hun[2]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                for i in [3,2,1,0]:
                    bili[i]-=hun[i]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            else:
                
                hun[1]-=bili[2]-int(bili[1]/2)
                liang-=hun[1]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                for i in [3,2,1,0]:
                    bili[i]-=hun[i]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            liang=0

        else:

            print("现有0灵,0个无业者,0个猎灵,0个石匠,0个催芽师")
            print("灵灭绝了!")
            bili[0]=0
            bili[1]=0
            bili[3]=0
            bili[2]=0
            liang=0
            huo=0
            break
    if bili[3]>0:
        ngjia=randint(0,10)
        ngjia=ngjia*ngjia
        ngjia=100-ngjia
        ng+=ngjia
        print("今日掌握"+str(ngjia)+"农耕技术,现技术"+str(ng))
    if ng>10000:
        print("在催芽师日夜研究中,发现了许多种植规律,这使得他们耕种效率更高了")
        print("灵还总结出来四季的变化,称为“春夏秋冬”")
        print("灵开始编辑历法!")
        print("催芽师更新:春秋收获粮食增加,且尽量避免在冬天耕种(不如捕猎)")
        sleep(3)
        jd+=1
        break
while  huo==1 and jd==3:
    if linshu!=bili[0]+bili[1]+bili[2]+bili[3]:
        print("代码出BUG,灵灭绝了")
        huo=0
        break
    input()
    print("")
    ill=[0,0,0]
    lll=0
    print("第"+str(sj)+"天")
    sj+=1
    if bili[0]>=4:
        y=randint(0,4)
    else:
        y=0
    if linshu>=2:
        x=randint(y,6)
    else:
        x=0
    bili[1]+=y
    bili[0]+=x-y
    if liang>=linshu and (not(sj%100>75 and sj%100<100)):
        w=randint(-int(bili[3]/5),int((bili[1]+1)/2))###猎给w个农
    else:
        w=randint(-int(bili[3]),0)###农给-w个猎
    bili[1]-=w
    bili[3]+=w
    if bili[2]<=int(bili[1]/2):
        z=randint(0,(int(bili[1]/2)-bili[2]))
        bili[1]-=z
        bili[2]+=z
    else:
        if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
            z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
            bili[1]+=z
            bili[2]-=z
            z=0-z
        else:
            z=randint(0,bili[2])
            bili[1]+=z
            bili[2]-=z
            z=0-z
    linshu+=x
    if w<0:
        if z<0:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(-w)+"个催芽师变为猎灵")
        else:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(-w)+"个催芽师变为猎灵")
    else:
        if z<0:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(w)+"个猎灵变为催芽师")
            
        else:
            print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(w)+"个猎灵变为催芽师")
  
    jian=[0,0,0,0]
    ill=[0,0,0,0]
    yi=randint(yqxs,1000)
    if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2 and bili[3]>=2:
        ill=[0,0,0,0]
        if (yi<=750):
            yi=0
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1
        elif (yi>=751) and(yi<=825):
            yi=1
            yqxs=125
        elif (yi>=826)and(yi<=900):
            yi=2
            yqxs=300
        elif (yi>=901)and(yi<=950):
            yi=3
            yqxs=675
        elif (yi>=951)and(yi<=975):
            yi=4
            yqxs=775
        elif (yi>=976)and(yi<=989):
            yi=5
            yqxs=825
        elif(yi>=990)and(yi<=999):
            yi=6
            yqxs=875###原875
        else:
            yi=7
            yqxs=950##原950
        if yi==0:
            print("今日无“疫情”出现")
        elif yi==1:
            i=randint(1,linshu)
            if i<=bili[0]:
                print("今日一名无业者中魔,处于生病状态")
                jian[0]=1
            elif i<=bili[0]+bili[1]:
                print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日一名石匠中魔,处于生病状态")
                jian[2]=1
            else:
                print("今日一名催芽师中魔,处于生病状态")
                jian[3]=1
        elif yi==2:##(a+b+c+d)^2=Σa^2+Σ2ab
            i=randint(1,(linshu)*(linshu))
            
            if i<=bili[0]*bili[0]:
                print("今日两名无业者中魔,处于生病状态")
                jian[0]=2
            
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日两名石匠中魔,处于生病状态")
                jian[2]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("今日两名催芽师中魔,处于生病状态")
                jian[2]=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("今日一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("今日一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("今日一名无业者中魔,一名催芽师中魔")
                jian[3]=1
                jian[0]=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("今日一名猎灵中魔,一名催芽师中魔")
                jian[3]=1
                jian[1]=1
            else:
                print("今日一名石匠中魔,一名催芽师中魔")
                jian[3]=1
                jian[2]=1
        elif yi==3:#
            i=randint(1,linshu)
            linshu-=1
            if i<=bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=1
            else:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[3]-=1
            
        elif yi==4:
            i=randint(1,linshu)
            linshu-=1
            j=randint(1,linshu*linshu)
            if i<=bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=1
            elif i<=bili[0]+bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=1
            elif i<=bili[0]+bili[1]+bili[2]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=1
            else:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[3]-=1
            if j<=bili[0]*bili[0]:
                print("此外还有两名无业者中魔,处于生病状态")
                jian[0]=2
            
            elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
                jian[1]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("此外还有两名石匠中魔,处于生病状态")
                jian[2]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("此外还有两名催芽师中魔,处于生病状态")
                jian[2]=2
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("此外还有一名无业者中魔,一名猎灵中魔")
                jian[1]=1
                jian[0]=1
            
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("此外还有一名无业者中魔,一名石匠中魔")
                jian[2]=1
                jian[0]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("此外还有一名猎灵中魔,一名石匠中魔")
                jian[2]=1
                jian[1]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("此外还有一名无业者中魔,一名催芽师中魔")
                jian[3]=1
                jian[0]=1
            elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("此外还有一名猎灵中魔,一名催芽师中魔")
                jian[3]=1
                jian[1]=1
            else:
                print("此外还有一名石匠中魔,一名催芽师中魔")
                jian[3]=1
                jian[2]=1
                
        elif yi==5:
            linshu-=2
            i=randint(1,(linshu)*(linshu))
            if i<=bili[0]*bili[0]:
                print("今日出现严重疫情,一名无业者死亡")
                bili[0]-=2
            
            elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,一名猎灵死亡")
                bili[1]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
                print("今日出现严重疫情,一名石匠死亡")
                bili[2]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
                print("今日出现严重疫情,一名催芽师死亡")
                bili[2]-=2
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
                print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
                bili[1]-=1
                bili[0]-=1
            
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
                print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
                bili[2]-=1
                bili[0]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
                print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
                bili[2]-=1
                bili[1]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
                print("今日出现严重疫情,一名无业者死亡,一名催芽师死亡")
                bili[3]-=1
                bili[0]-=1
            elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
                print("今日出现严重疫情,一名猎灵死亡,一名催芽师死亡")
                bili[3]-=1
                bili[1]-=1
            else:
                print("今日出现严重疫情,一名石匠死亡,一名催芽师死亡")
                bili[3]-=1
                bili[2]-=1
                
        elif yi==6:
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/3))
                jian[i]=ill[i]
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
        elif yi==7:
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i])))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                jian[i]=ill[i]
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
            
    else:
        if yi>=900:
            yqxs=500
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                bili[i]-=ill[i]
                linshu-=ill[i]
            print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
            for i in [0,1,2,3]:
                ill[i]=randint(0,int((bili[i]+1)/2))
                jian[i]=ill[i]
            if linshu==0:
                print("现有0灵,0个无业者,0个猎灵")
                print("灵灭绝了!")
                bili[0]=0
                bili[1]=0
                bili[2]=0
                bili[3]=0
                liang=0
                huo=0
                break
            print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
        else:
            print("今日无疫情出现")
            if yqxs>125:
                print("疫情得到好转")
            yqxs=1

    liang-=linshu
    if sj%100<=24:
        shl=randint(shou[4]*(int(ng/10000)),shou[4]*(5+int(ng/7000)))
    elif sj%100<=49:
        shl=randint(0,shou[4]*3)
    elif sj%100<=74:
        shl=randint(shou[4]*(7+int(ng/10000)),shou[4]*(15+int(ng/7000)))
    else:
        shl=randint(0,shou[4]*2)
    for i in [4,3,2,1]:
        shou[i]=shou[i-1]
    shou[0]=bili[3]-jian[3]
    liang-=bili[3]-jian[3]
    liang+=shl
    if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
        sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
    else:
        sc=randint(0,5*(bili[1]-jian[1]))
    liang+=sc#
    sc+=shl
    l[20]=sc-linshu
    sc-=shl
    for i in range(0,20):
        l[i]=l[i+1]
    if(l[0]>0):
        lll=1
        if(liang<0):
            l[0]=int(0.1*l[0])+1
        elif(l[0]>0.5*liang):
            l[0]=randint(int(0.2*liang),int(0.5*liang))+1
        qwertyu=randint(1,l[0])
        liang-=qwertyu
    
    print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
    if(lll):
        print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
    else:
        print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
    if liang<0:
        liang=-liang
        linshu-=liang
        print("大饥荒!")
        hun=[0,0,0,0]
        if (bili[0]>=liang):
            bili[0]-=liang
            print("有"+str(liang)+"个无业者被饿死")
            print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            liang=0##催芽师没编完
        elif bili[0]+bili[3]>=liang:
            liang-=bili[0]
            bili[3]-=liang
            print("有"+str(bili[0])+"个无业者被饿死,有"+str(liang)+"个催芽师被饿死")
            bili[0]=0
            liang=0
        elif linshu>0:
            liang-=bili[0]
            hun[0]=bili[0]
            liang-=bili[3]
            hun[3]=bili[3]
            if bili[2]>int(bili[1]/2):
                
                hun[2]+=bili[2]-int(bili[1]/2)
                liang-=hun[2]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                for i in [3,2,1,0]:
                    bili[i]-=hun[i]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            else:
                
                hun[1]-=bili[2]-int(bili[1]/2)
                liang-=hun[1]
                hun[2]+=int(liang/3)
                hun[1]+=liang-int(liang/3)
                print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
                for i in [3,2,1,0]:
                    bili[i]-=hun[i]
                print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
            liang=0

        else:

            print("现有0灵,0个无业者,0个猎灵,0个石匠,0个催芽师")
            print("灵灭绝了!")
            bili[0]=0
            bili[1]=0
            bili[3]=0
            bili[2]=0
            liang=0
            huo=0
            break
    if bili[3]>0:
        ngjia=randint(0,10)
        ngjia*=ngjia
        ngjia=100-ngjia
        ng+=ngjia
        print("今日掌握"+str(ngjia)+"农耕技术,现技术"+str(ng))