python应用-解决应用题

   应用题:

    30个人出海去玩,船瓦特了,要弄死15个人,其他人才能活下来,围成一圈,报数1,2,3...,谁报到9就弄死谁,以此类推. 直到剩下15个人为止.其中15个人是基督徒,其他15个不是基督徒,求这些人的站位.

     

def main():
    persons=[True]*30
    counter=0
    index=0
    number=0
    while counter<15:
        if persons[index]:
            number += 1
            if number==9:
                persons[index]=False
                counter += 1
                number=0
        index += 1
        index %= 30
    for person in persons:
        print('基'if person else '非',end='')
if __name__ == '__main__':
    main()

 结果: 基基基基非非非非非基基非基基基非基非非基基非非非基非非基基非 

posted @ 2018-03-11 22:13  圆柱模板  阅读(311)  评论(0编辑  收藏  举报