ACM之【对拍】
首先,我們要了解何為對拍。
對拍其實就是我們弄一個隨機的種子讓其生成很多的數據,讓兩份程序跑,看跑出來的答案是不是都是一樣的。
對拍經常使用的場景:
- 平時訓練中,我們寫的程序有問題但是不知道是哪些數據導致錯誤的。
可以從網上復制一份別人正確的代碼。用種子生成數據,將我們自己的代碼和別人的代碼對拍找到錯誤的數據點。 - 比賽中可以用對拍檢測代碼的正確性。可以自己寫一個暴力的代碼和自己優化后的代碼對拍,看優化后的代碼是不是正確的。
隨機種子的生成,根據問題也是對應很多不同的模板。這些可以自己寫一個,或者網上找人家現成的模板。
對拍其實就是調用系統批處理的命令,來一一的對拍。所以根據系統的不同對拍的程序也不同。
ACM線下賽一般是Linux系統,故需要Linux的對拍。但是平常訓練中,一般用windows系統的對拍。
例子:
然后我們就可以在記事本找到其對應的錯誤數據。
本筆記學習自這里
總結
- 上一篇: HTML最常用的字符实体
- 下一篇: 1047 Student List fo