結果
問題 |
No.2093 Shio Ramen
|
ユーザー |
|
提出日時 | 2022-10-07 22:27:55 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,473 bytes |
コンパイル時間 | 1,079 ms |
コンパイル使用メモリ | 102,348 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-06-12 19:26:21 |
合計ジャッジ時間 | 2,067 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 10 WA * 20 |
ソースコード
#include <iostream> #include <vector> #include <string> #include <algorithm> #include <cmath> #include <tuple> #include <bitset> #include <map> #include <set> #include <queue> #include <iomanip> #define rep(i,n) for(i=0; i<n; ++i) #define inc_rep(i,a,n) for(i=a; i<=n; ++i) #define dec_rep(i,n,a) for(i=n; i>=a; --i) #define in(a) cin >> a #define out(a,b) cout << a << b #define print_vec(v) for(auto it=v.begin();it!=v.end();++it)cout<<*it <<" ";cout<<endl #define print_vec2d(v) for(int i=0;i<v.size();++i){for(int j=0;j<v[i].size();++j)cout<<v[i][j]<<" ";cout<<endl;}cout<<endl using namespace std; using lint = long long; int main(void){ int i, j; lint k, cnt=0, x, y; lint p, q, n, m; string s; in(n);in(m); vector<pair<lint, lint> > v(n); rep(i,n){ lint a, b; in(a);in(b); v[i]=make_pair(a, b); } vector<lint> d(m+1, 0); rep(i, n){ // print_vec(d); lint si, ai; tie(si, ai) = v[i]; if(si<=m){ vector<bool> f(m+1, false); if(d[si]<ai){ d[si]=ai; f[si]=true; } rep(j,m+1){ if(f[j]) continue; if(d[j]&&j+si<=m){ if(d[j+si]<d[j]+ai) {d[j+si]=d[j]+ai; f[j+si]=true;} } } } } out(*max_element(d.begin(), d.end()),endl); // print_vec(d); return 0; }