current_card = 0 use = 0 times = 0 whilenot checkIfEnd(rank) and times < n: times += 1 try: current_card = heap.pop(0) except: break # print(rank, "C",current_card, "U", use)
flag = False# 是否有满足的条件 use = 0
for i inrange(len(rank)): if i != 0and current_card == rank[i] - 1: rank[i - 1] = current_card flag = True use = 1 break if flag: continue for i inrange(len(rank)): if i != len(rank) - 1and current_card == rank[i] + 1: rank[i + 1] = current_card flag = True use = 2 break if flag: continue for i inrange(len(rank)): if i != 0and i != len(rank) - 1: if current_card > rank[i - 1] and current_card < rank[i + 1] and (rank[i] < rank[i - 1] or rank[i] > rank[i + 1]): rank[i] = current_card flag = True use = 3 break if flag: continue for i inrange(len(rank)): if i == 1and current_card < rank[1] and rank[0] > rank[1]: rank[0] = current_card flag = True use = 4 break if flag: continue for i inrange(len(rank)): if i == len(rank) - 2and current_card > rank[-2] and rank[-1] < rank[-2]: rank[-1] = current_card flag = True use = 5 break if flag: continue