日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

guet-acm-开挂的chair

發(fā)布時間:2023/12/16 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 guet-acm-开挂的chair 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目:
“Watch your six!”
最近Chair在玩使命召喚,但是因為菜得特別,所以特別地菜,在敵人的包圍圈中,倒霉的Chair表示每次回頭都會看到一萬個敵人!然后壯烈犧牲,那么問題就來了——現(xiàn)在Chair打開了修改器,要把這群可惡的敵人干掉,那么在包圍圈中Chair應(yīng)當(dāng)如何突圍?
請保證Chair消滅最多敵人并且沖出包圍圈。假設(shè)Chair在左上角,達(dá)到右下角時算突圍成功。

4

1 2 3 4

5 6 9 8

9 1 0 1

2 3 4 5

值得注意的是,Chair是如此英勇,應(yīng)當(dāng)一往無前,也就是說只能向下或向右走。
圖示應(yīng)為最大戰(zhàn)果——于是你應(yīng)該輸出他們的和:35

輸入
第一行,一個N
第二行至N+1行,每行N個數(shù)字,表示這點的敵人人數(shù)

輸出
消滅敵人的總和

輸入范例
4

1 2 3 4

5 6 9 8

9 1 0 1

2 3 4 5
輸出范例
35

代碼如下:

/* 利用動態(tài)規(guī)劃:S[i,j]:到達(dá)i,j的最大戰(zhàn)果 a[i,j]:i,j位置的敵人數(shù) 動態(tài)規(guī)劃轉(zhuǎn)移方程:S[i,j] = max(S[i,j-1], S[i-1,j]) + a[i,j]*/ #include <iostream> #include<algorithm> using namespace std; int main(){int t, N;while( cin >> N){int a[1024] = {0};for(int i=1; i<=N; i++)for(int j=1; j<=N; j++){cin >> t;a[j] = _cpp_max(a[j-1], a[j]) + t;}cout << a[N]<<endl;}return 0; }

我剛開始時用遞歸去做的,思想是沒有錯的,就是沒有做出來.
然后想怎么隨機(jī)的向下走和向右走,就用了隨機(jī)函數(shù),這里的思想就錯了
后來還是不懂,就百度求助了.
看了網(wǎng)友的解答才懂.

利用動態(tài)規(guī)劃:
S[i,j]:到達(dá)i,j的最大戰(zhàn)果
a[i,j]:i,j位置的敵人數(shù)
動態(tài)規(guī)劃轉(zhuǎn)移方程:
S[i,j] = max(S[i,j-1], S[i-1,j]) + a[i,j]
這道題的重點就在于如何使用動態(tài)規(guī)劃的思想。

總結(jié)

以上是生活随笔為你收集整理的guet-acm-开挂的chair的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。