結果

問題 No.505 カードの数式2
ユーザー rodea
提出日時 2018-03-17 12:56:51
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 677 bytes
コンパイル時間 757 ms
コンパイル使用メモリ 64,128 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-12-24 00:25:18
合計ジャッジ時間 1,351 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 15 WA * 14
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
using namespace std;

int main()
{
	int n, a[20];
	long dp[20];

	cin >> n;

	for (int i = 1; i <= n; i++)
	{
		cin >> a[i];
	}

	int add, sub, mul;
	add = a[1] + a[2];
	sub = a[1] - a[2];
	mul = a[1] * a[2];

	if (add >= sub)
	{
		if (add >= mul) dp[1] = add;
		else dp[1] = mul;
	}
	else
	{
		if (sub >= mul) dp[1] = sub;
		else dp[1] = mul;
	}

	for (int i = 1; i < n - 1; i++)
	{
		add = dp[i] + a[i + 2];
		sub = dp[i] - a[i + 2];
		mul = dp[i] * a[i + 2];

		if (add >= sub)
		{
			if (add >= mul) dp[i + 1] = add;
			else dp[i + 1] = mul;
		}
		else
		{
			if (sub >= mul) dp[i + 1] = sub;
			else dp[i + 1] = mul;
		}
	}
	cout << dp[n - 1] << endl;
}
0