結果
問題 |
No.10 +か×か
|
ユーザー |
👑 |
提出日時 | 2020-01-21 18:54:19 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 792 bytes |
コンパイル時間 | 998 ms |
コンパイル使用メモリ | 81,316 KB |
実行使用メモリ | 10,268 KB |
最終ジャッジ日時 | 2024-07-05 23:56:52 |
合計ジャッジ時間 | 11,505 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 4 TLE * 1 -- * 7 |
ソースコード
#include <iostream> #include <vector> #include <algorithm> using namespace std; int n,z; int a[50]; string A; vector<string> Z; void dfs(int nw,int j){ //cout << nw << " " << j << " " << A << endl; if(j == n){ if(z==nw){ string K = ""; for(int i = 0; A.size() > i; i++){ K.push_back(A[i]); } Z.push_back(K); } return; } if(nw+a[j] <= z){ A.push_back('+'); dfs(nw+a[j],j+1); A.pop_back(); } if(nw*a[j] <= z){ A.push_back('*'); dfs(nw*a[j],j+1); A.pop_back(); } } int main(){ cin>>n>>z; for(int i = 0; n > i; i++){ cin>>a[i]; } dfs(a[0],1); sort(Z.begin(),Z.end()); cout << Z[Z.size()-1] << endl; }