平均分攤消費總額,或處理揪團旅遊、聚餐時大家付款金額不同的多人分帳結算,自動算出誰該付給誰多少錢。
當一群人一起消費,如果最後每個人自己出的錢剛好等於「總花費 ÷ 人數」,就是公平;但現實中通常不是這樣——常常是一個人先刷卡付了餐廳的錢,另一個人付了計程車錢,還有人完全沒付到錢。這時候「公平」不是叫每個人再重新付一次自己那份,而是要看每個人「已經付了多少」跟「本來應該付多少」之間的差額,再想辦法用最少次數的轉帳把差額打平。
如果直接把每一筆花費都拆開平均分攤(晚餐平均分、計程車平均分、飯店平均分……),計算會變得很複雜,而且最後常常算錯,因為很容易漏算「誰已經先付過錢」。正確做法是先算出整趟活動的總支出與平均每人應該負擔多少,再對照「這個人自己實際付了多少」,兩者的差就是他該收回或該補的錢——完全不用管到底是哪一餐、哪一筆花費,最後只看總帳就好。
把每個人分成「該收錢的人」(多付了)和「該付錢的人」(少付了)兩邊,就像一張圖,每個人是一個點,欠的錢是點跟點之間的連線。如果照原始的付款紀錄一筆一筆轉帳,可能要轉很多次;但只要每次都讓「該收最多錢的人」和「該付最多錢的人」兩兩配對,轉掉當下能轉的最大金額,重複這個動作直到所有人都打平,就能用接近最少的轉帳次數把所有債務結清——這就是這個計算機在「轉帳建議」欄位實際在做的事,程式設計上常稱為「債務簡化」(debt simplification)。
假設小明訂飯店付了 $4,000、小華付了晚餐 $2,000、小美付了門票 $1,200、小強完全沒有先付錢。總支出 = 4000+2000+1200+0 = $7,200,4 人平均每人應付 $1,800。對照每個人實際付的錢:小明多付 2,200(該收錢)、小華多付 200(該收錢)、小美少付 600(該付錢)、小強少付 1,800(該付錢)。用「最多收 配最多欠」的方式配對:小強先把 1,800 轉給小明(小強打平,小明還缺 400);接著小美轉 400 給小明(小明打平,小美還欠 200);最後小美把剩下的 200 轉給小華(兩人都打平)。結果只需要 3 筆轉帳,就能讓每個人最終的實際負擔都變成 $1,800,跟直接手動平均分攤的結果完全一樣。
系統會把金額四捨五入到小數點後兩位顯示,多人分帳結算時如果金額無法整除,可能會出現 1 分錢以內的極小誤差,這是四捨五入的正常現象,不影響整體分帳的公平性,這幾分錢要算給誰或直接忽略都可以自行決定。
計算機本身不限定貨幣,「$」符號只是通用標示,你可以把它當成台幣、日圓、美金或任何貨幣使用,只要輸入的數字單位前後一致(不要一筆用台幣、一筆用日圓混著輸入)即可。
不會。這個工具完全是瀏覽器端計算,頁面沒有任何 fetch 或 API 連線,你輸入的所有資料只存在你自己的瀏覽器分頁裡,重新整理或關閉頁面就會消失,也不會傳到任何伺服器。
不用,姓名欄位可以留空,系統會自動用「第 1 人」「第 2 人」這樣的編號代替,方便快速試算;如果要把轉帳建議分享給朋友對帳,建議還是填真實姓名或暱稱會比較清楚。
轉帳建議只保證「用最少次數的轉帳讓每個人最終負擔金額打平」,並不保證配對到的對象一定符合現實中的交情或方便程度;只要你們這群人自行調整順序後,每個人最後轉出/收到的總金額跟建議一致,結果就一樣公平。