Simulation 就是「模擬」。撰寫程式,去模擬一個行為。
通常一個 Simulation 的問題,會詳述定義程式的功能與效果,並且規定一套固定的運作流程,程式必須有樣學樣、執行動作。程式設計人員不需要額外設計複雜的演算法,只需要照著題目的描述,建構適當的資料結構來儲存資訊,撰寫行為相仿的程式碼,就可以了。
Simulation 主要是在考驗程式設計人員編寫程式碼的功力,而非考驗程式設計者的急智和創意。 Simulation 可說是程式設計的基本功──問題說得清清楚楚,不用設計複雜的演算法,只要照著規定做就好。這類題目很適合程式設計的初學者。
Simulation 的問題有時相當難纏。若是問題規定的錯綜複雜,那麼寫起程式碼就會相當累人。若是一不小心犯了錯誤,只能望著那長篇大論、雜亂無章的程式碼,從中找出錯誤所在,相當痛苦。
另外,有一些目前尚未解決的經典題目,由於目前沒有好的演算法,所以大家遇到了這種問題,就只能乖乖的照著題目的要求來做。這一類的題目也就變成了 Simulation 的題目。
文章定位: