欢迎光临散文网 会员登陆 & 注册

超百坑讲坛第7期拾遗——完美的黄盖主?(下)

2020-01-30 22:05 作者:超科学的某萌新玩家  | 我要投稿

上回说到,非酋的我在苦到第一次求桃的时候就直接暴毙,由此引发了对黄盖主当场苦死产生了怀疑,但是当重新调试后发现,还是很容易苦死到场,实际上根本没有一次真正达到了操纵整个牌堆的场面,让我对这种场面(标黄盖主,2蜀国香香,3步练师,4曹植,5神关,6国太,7戏志才先辅吴国太,8周泰)的黄盖主会不会苦死,苦死的概率产生了新一轮的质疑,毕竟我再怎么非,也不可能连续个几十次都成功吧。

先分析牌堆结构,过牌类桃酒17张,无中4张,铁索6张

17*5+4*3+6*2=109<161

也就是说光靠牌堆,苦肉加良助是无法做到控制整个牌堆

但是再算上补益,提前苦肉预支的,本来就有的牌,通过把牌堆都拽手里来达到控制牌堆的目的。

4*8+2+2*4+109-27=124

理想情况下至少还要补益成功10次。。。

(所以那次的MVP果然是刘禅吗?清掉杀就可以提高补益成功率了)

最后附上菜鸡所用的代码

from random import *


def getpai(alist,blist,n):

    global list_paidui

    global list_qidui

    if blist==list_paidui:

        if n>len(blist):

            #摸完剩下的牌

            for i in blist:

                blist.remove(i)

                alist.append(i)

                n-=1

            #洗牌

            xipai()

    for i in range(n):

        a=randint(1,161)

        while (a not in blist):

            a=randint(1,161)

        blist.remove(a)

        alist.append(a)


def xiuxue(a,b):

    global list_xue

    list_xue[a-1]+=b


def xiupai(a,n,i=0):

    global list1

    global list2

    global list3

    global list_paidui

    global list_qidui

    if n > 0:

        if a==1:

            getpai(list1,list_paidui,n)

        elif a==2:

            getpai(list2,list_paidui,n)

        elif a==3:

            getpai(list3,list_paidui,n)

    elif n<0:

        if a==1:

            if n==-1:

                if i==0:

                    print("请输入弃牌号")

                    i=eval(input())

                    list1.remove(i)

                    list_qidui.append(i)

                    #顺手牵羊

                    if i>=92 and i<=96:

                        getpai(list1,list2,1)

                    #过河拆桥

                    elif i>=86 and i<=91:

                        if len(list3)>0:

                            xiupai(3,-1)

                        else:

                            xiupai(2,-1)

                    #无中生有

                    elif i>=97 and i<=100:

                        xiupai(1,2)

                else:

                    list1.remove(i)

                    list_qidui.append(i)

            elif n<-1:

                getpai(list_qidui,list1,len(list1))

        elif a==2:

            getpai(list_qidui,list2,n)

        elif a==3:

            getpai(list_qidui,list3,n)


def xipai():

    global list_paidui

    global list_qidui

    for i in list_qidui:

        list_qidui.remove(i)

        list_paidui.append(i)


#初始化牌堆

list_paidui = []

list_qidui = []

for i in range(1,162):

    list_paidui.append(i)


#初始化人员手牌

list1=[]#黄盖主手牌

list2=[]#可顺手牵羊人员手牌

list3=[]#只能过河拆桥人员手牌

getpai(list1,list_paidui,16)

getpai(list2,list_paidui,16)

getpai(list3,list_paidui,12)


#初始化人员血量

list_xue=[0,3,3,3,5,3,3,4]


#开始操作

flag=1

while flag:

    print("血:",list_xue)

    list1.sort()

    print("盖:",list1,len(list1))

    list2.sort()

    print(list2)

    list3.sort()

    print(list3)

    print("开始操作:0结束游戏1修血2修牌3濒死4查堆5得牌")

    flag=eval(input())

    if flag==0:

        break

    elif flag==1:

        print("修谁的血?输入几号位")

        a=eval(input())

        print("怎么修?")

        b=eval(input())

        xiuxue(a,b)

    elif flag==2:

        print("修谁的牌?输入几号位")

        a=eval(input())

        print("怎么修?")

        b=eval(input())

        xiupai(a,b)

    elif flag==3:

        #补益

        a=randint(1,161)

        while (a not in list1):

            a=randint(1,161)

        print("补益牌是:",a)

        if a>85:

            print("补益成功")

            xiupai(1,-1,a)

            xiupai(1,4)

        else:

            print("补益失败")

        #桃酒

        for i in list1:

            if i>=69 and i<=85:

                xiupai(1,-1,i)

                xiupai(1,4)

                print("自救成功")

                break

        #桃园结义

        for i in list1:

            if i==106:

                xiupai(1,-1,i)

                xiupai(1,4)

                print("自救成功")

                break

    elif flag==4:

        print("牌堆:",list_paidui,len(list_paidui))

        print("弃堆:",list_qidui,len(list_qidui))

    elif flag==5:

        for i in list1:

            #无中生有

            if i>=97 and i<=100:

                list1.remove(i)

                list_qidui.append(i)

                xiupai(1,2)

            #五谷丰登

            elif i>=107 and i<=108:

                list1.remove(i)

                list_qidui.append(i)

                list4=[]

                getpai(list4,list_paidui,8)

                print(list4,"选一张")

                print("建议选取桃酒69-85,桃园106")

                print("次选五谷107-108,无中97-100")

                print("最次非基本>85")

                a=eval(input())

                list4.remove(a)

                list1.append(a)

                for x in list4:

                    list4.remove(x)

                    if len(list4)>=5:

                        list2.append(x)

                    else:

                        list3.append(x)

            """#铁索连环

            elif i>=123 and i<=128:

                list1.remove(i)

                list_qidui.append(i)

                xiupai(1,1)

            #顺手牵羊

            elif i>=92 and i<=96:

                list1.remove(i)

                list_qidui.append(i)

                getpai(list1,list2,1)

            #过河拆桥

            elif i>=86 and i<=91:

                list1.remove(i)

                list_qidui.append(i)

                if len(list3)>0:

                    xiupai(3,-1)

                else:

                    xiupai(2,-1)"""

如果菜鸡代码真有人要抄着做实验的话……(算了,自说自话的UP是屑) 

(づ ̄3 ̄)づ╭❤~你懂得

真就传统异能,一张图用一年。

                        

                    

        

        

        




超百坑讲坛第7期拾遗——完美的黄盖主?(下)的评论 (共 条)

分享到微博请遵守国家法律