Processing math: 100%

ARC090 C : Candies(300)

作成日:2018.02.02
最終更新日:2018.02.02

問題概要

問題本文

 2×Nのマス目のij列のマス(i,j)に飴がAi,j個置いてある。 (1,1)から(2,N)へ遠回りせずに移動する時、訪れたマスにある飴の総数の最大値を求めよ。
制約
1N100
1Ai,j100

考え方

 移動の仕方は、1行目から2行目に動く列の位置の数と同じN通りである。 Nは小さいので全通り試すことができる。

ソースコード

マクロ等はこちら

  1. const int MC = 110;
  2. int N;
  3. int sa[MC];
  4. int sb[MC];
  5.  
  6. int main(){
  7. cin >> N;
  8. repp(i,1,N+1){
  9. cin >> sa[i];
  10. sa[i] += sa[i-1];
  11. }
  12. repp(i,1,N+1){
  13. cin >> sb[i];
  14. sb[i] += sb[i-1];
  15. }
  16. int ans = 0;
  17. repp(i,1,N+1){
  18. ans = max(ans , sa[i]+sb[N]-sb[i-1]);
  19. }
  20. cout << ans << endl;
  21. return 0;
  22. }

解法まとめ

 N通りの移動の仕方それぞれについて飴の数を求め、その最大値が答えである。(16-20行)

ARC090の他の問題 D E F

自己紹介

プログラミングとか合成音声とか
詳しくはこちら
twitter

プライバシーポリシー

個人情報利用についてはこちら

最終更新日:2023.03.05

お問い合わせ

このページに関するお問い合わせはこちら

競技プログラミングMENU

問題を解くまでの道のり

その他

全体MENU

寄付モドキ

0冂から10000冂まで
詳しくはこちら