結果

問題 No.10 +か×か
ユーザー Unbakedbread
提出日時 2025-08-07 00:36:47
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 537 ms / 5,000 ms
コード長 457 bytes
コンパイル時間 3,246 ms
コンパイル使用メモリ 285,660 KB
実行使用メモリ 303,676 KB
最終ジャッジ日時 2025-08-07 00:36:53
合計ジャッジ時間 5,776 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 12
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)

int main(){
	int N,T;cin>>N>>T;
	vector<int> A(N);
	rep(i,N) cin>>A[i];
	
	vector dp(N,vector<string>(T+1,"!"));
	dp[0][A[0]]="";
	rep(i,N-1) rep(j,T+1){
		if(dp[i][j]=="!") continue;
		if(j+A[i+1]<=T) dp[i+1][j+A[i+1]]=max(dp[i+1][j+A[i+1]],dp[i][j]+"+");
		if(j*A[i+1]<=T) dp[i+1][j*A[i+1]]=max(dp[i+1][j*A[i+1]],dp[i][j]+"*");
	}
	
	cout<<dp[N-1][T]<<"\n";
	return 0;
}
0