ARC090 C : Candies(300)

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

問題概要

問題本文

 $2 \times N$のマス目の$i$行$j$列のマス$(i,j)$に飴が$A_{i,j}$個置いてある。 $(1,1)$から$(2,N)$へ遠回りせずに移動する時、訪れたマスにある飴の総数の最大値を求めよ。
制約
$1 \leq N \leq 100$
$1 \leq A_{i,j} \leq 100$

考え方

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

ソースコード

マクロ等はこちら

const int MC = 110;
int N;
int sa[MC];
int sb[MC];

int main(){
	cin >> N;
	repp(i,1,N+1){
		cin >> sa[i];
		sa[i] += sa[i-1];
	}
	repp(i,1,N+1){
		cin >> sb[i];
		sb[i] += sb[i-1];
	}
	int ans = 0;
	repp(i,1,N+1){
		ans = max(ans , sa[i]+sb[N]-sb[i-1]);
	}
	cout << ans << endl;
	return 0;
}

解法まとめ

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

ARC090の他の問題 D E F

自己紹介

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

プライバシーポリシー

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

最終更新日:2023.03.05

お問い合わせ

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

競技プログラミングMENU

問題を解くまでの道のり

その他

全体MENU

寄付モドキ

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