結果
問題 | No.247 線形計画問題もどき |
ユーザー |
![]() |
提出日時 | 2016-03-25 07:26:41 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 31 ms / 2,000 ms |
コード長 | 1,186 bytes |
コンパイル時間 | 1,410 ms |
コンパイル使用メモリ | 160,260 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-07 11:14:24 |
合計ジャッジ時間 | 2,372 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 23 |
ソースコード
#include <bits/stdc++.h>#include <cmath>#include <climits>#include <cstdio>using namespace std;#define endl '\n'#define PB push_back#define ALL(a) (a).begin(),(a).end()#define SZ(a) int((a).size())#define FOR(i,a,b) for(int i=(a);i<(b);++i)#define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--)#define REP(i,n) FOR(i,0,n)#define RREP(i,n) for (int i=(n)-1;i>=0;i--)#define RBP(i,a) for(auto& i : a)#define DEBUG(x) cout<<#x<<": "<<(x)<<endl#define F first#define S second#define SNP string::npos#define WRC(hoge,x) cout << "Case #" << (hoge)+1 << ": " << x << endl#define ten(n) (LL)pow(10,n)#define INF ten(8)typedef pair<int,int> P;typedef long long int LL;typedef unsigned long long ULL;typedef pair<LL,LL> LP;void ios_init(){ ios::sync_with_stdio(false); cin.tie(0);//cout.setf(ios::fixed);//cout.precision(12);}LL dp[100010];int main(){ios_init();int n,c;cin >> c;cin >> n;vector<int> a(n);REP(i,n) cin >> a[i];fill(dp,dp+c+1,-1);dp[0] = 0;REP(i,n){FOR(j,a[i],c+1){if(dp[j-a[i]] != -1){if(dp[j] != -1) dp[j] = min(dp[j],dp[j-a[i]]+1);else dp[j] = dp[j-a[i]]+1;}}}cout << dp[c] << endl;return 0;}