NOJ 1641錯誤的演算法

2021-07-09 15:44:03 字數 895 閱讀 4807

昨晚做到十二點,經過cyw大神的耐心教導(好吧我還是沒聽懂)後來去睡覺時又想了一會兒,知道了大神所說的不許要求正確解的意義(只要求正確解對應的sum即可)。因為粗心忽略了題中的條件解可以為多個。因此只需證明題中裁判演算法所給的解只是運氣成分,碰巧正確而已。尼瑪早上起來開啟筆記本改了下**果然ac了。我藥丸啊

1、用題中所給條件算出裁判要的解。

2、用正確演算法算出最優解們所符合的那個行列sum值最大和max。

3、用裁判的解代入計算sum的公式,要是錯誤,說明裁判的解錯(strong)。否則則是weak。

ac**:

#include#includeusing namespace std;

int list[510][510];

int hang,lie;

int sum1(int x,int y)

for(i=x+1;i<=hang;i++)

for(i=y-1;i>=1;i--)

for(i=y+1;i<=lie;i++)

return (sum+list[x][y]);

}int main(void)

max=0;

inr=1;

for (i=1 ;i<=hang ;i++)

if(sum>max)

} max=0;

inc=1;

for (j=1 ;j<=lie ;j++)

if(sum>max)

} max=0;

for(i=1;i<=hang;i++)

}} if(sum1(inr,inc)==max)

else

memset(list,0,sizeof(list));

} return 0;

}

錯誤的演算法

有道題目是這樣的 輸入乙個 n 行 m 列網格,找乙個格仔,使得它所在的行和列中所有格仔的數之和最大。如果答 案不唯一,輸出任意解即可。比如,在下面的例子中,最優解是 1,3 即第一行和的三列的交 點 行從上到下編號為 1 n,列從左到右編號為 1 m 所有 7 個數之和為 35。快要比賽的時候,有...

省賽模擬一 錯誤的演算法

有道題目是這樣的 輸入乙個 n 行 m 列網格,找乙個格仔,使得它所在的行和列中所有格仔的數之和最大。如果答 案不唯一,輸出任意解即可。比如,在下面的例子中,最優解是 1,3 即第一行和的三列的交 點 行從上到下編號為 1 n,列從左到右編號為 1 m 所有 7 個數之和為 35。快要比賽的時候,有...

CSU 1779 錯誤的演算法 矩陣 模擬

有道題目是這樣的 輸入乙個 n 行 m 列網格,找乙個格仔,使得它所在的行和列中所有格仔的數之和最大。如果答 案不唯一,輸出任意解即可。比如,在下面的例子中,最優解是 1,3 即第一行和的三列的交 點 行從上到下編號為 1 n,列從左到右編號為 1 m 所有 7 個數之和為 35。快要比賽的時候,有...