てったい北関東

覚書、感想、備忘録

トイレにおける上座・下座を考慮した待ち行列

トイレの上座・下座は入り口からの距離によって決まる。
ここでトイレt_iの入り口からの距離をd_iとしたとき、
t_it_jよりも上座であるとは
d_i < d_j
が成り立つことをいう。
以下、トイレの距離を上座度と定義する。

プレイヤは、すべてのプレイヤの役職を意味する序列をわかるものとする。
あるプレイヤpの序列をr_pとする。
ここで、t_jにプレイヤqが用を足していることを考えた場合に、
r_p \le r_qであれば、d_i \le d_jとなるようにトイレを決定する必要がある。
空きトイレがなければ待ち時間が発生するためペナルティを受ける。
待ち行列r_q \le r_rとなるプレイヤrがいる場合は優先してトイレを使用することができるが、
前方にいるプレイヤの数だけペナルティを受ける。
(トイレの入り口は往々にして狭いため、行列をかき分ける時間的ロスが存在する。)
一方で
r_p \le r_qの場合は、任意のトイレを使用することが可能である。
ただし、ここでd_i \le d_jとなるようにトイレを決定した場合は、
プレイヤjは上座・下座を考慮しなかったことになるためペナルティを受けることとなる。
各ペナルティは想定するトイレ問題を考慮し決定する必要がある。

各プレイヤは自身のペナルティを最小化するように行動する。