pythonを最近学習し始めた者です。
pythonを使用してやりたいことがあるのですが、キーワードがわからない為、やり方を検索できずにいます。

以下やりたい内容となります。

やりたいこと:ある地域の中に3つのタクシー会社があるとします。(会社A・会社B・会社C)各会社の所有タクシー数は、[会社A:2台][会社B:2台][会社C:1台]
タクシーを呼ぶ人は地域内の建物にいることとし、タクシー会社から地域内の各建物までの距離はあらかじめ別のcsvファイルで作成してあります。
タクシーを呼ぶ人がいた時、タクシーを呼んだ人がいる建物に近い会社からタクシーを配車させることを繰り返した時に、タクシーがすべて出払っている会社が出るといった事象が起きることが考えられますが、そういった場合に、タクシーを呼んだ人のいる建物から近く、タクシーの残っている会社からタクシーを配車する場合にはpythonのどのような機能を使用すればよいでしょうか。
3つの会社のタクシー数<タクシーを呼ぶ人の数
とし、全タクシー会社のタクシーがすべて配車されるまで繰り返すものとします。

このような内容をpythonで構築したい場合、どのようなキーワードで検索、どのような構文で構築するのが良いのでしょうか。
初歩的なことをお聞きし申し訳ございませんが、よろしくお願いいたします。