Comment detail

水の移し替えパズル (Nested Flatten)

This comment is reply for 3563 kozima: water_move([1,1,4]) ...(水の移し替えパズル). Go to thread root.

スレッドを三つ同時に走らせて、一番速く帰ってきた奴を採用しているんですが、
処理時間が短すぎて、スレッドの終了チェック前にすべてのスレッドが終了しているようです。
そのため、一番目のスレッド(カップaに水を集める)の答えが採用されてしまっているようです。

45行目から下のコードにすることで、1がちゃんと帰ってきます。

一番乗り目指して愚直にやったのが、仇になったなぁ。
1
2
3
4
5
6
7
8
9
    time.sleep(0.1)
    result = []
    while (1):
        for x in range(3):
            if not threadholder[x].isAlive():
                result.append(count[x][0])
        if len(result) :
            break
    return min(result)

Index

Feed

Other

Link

Pathtraq

loading...