問題一覧 > 通常問題

No.2429 Happiest Tabehodai Ways

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 82
作問者 : KoiKoi / テスター : 0214sh70214sh7 noya2noya2 👑 potato167potato167 tassei903tassei903 ramdosramdos ponjuiceponjuice
9 ProblemId : 10010 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-09-28 22:24:53

問題文

Koi君は食べ放題のお店に来ました。このお店には $N$ 種類の料理があり、 $i$ 種類目の料理は カロリーが $C_i$ で美味しさが $D_i$ です。また、Koi君は満腹度幸福度の $2$ つの値を持っています。はじめ、満腹度、幸福度はともに $0$ です。

Koi君は以下の一連の動作を好きなだけ行います。( $0$ 回でも良い)

  1. $1\leq i\leq N$ の整数 $i$ を $1$ つ選ぶ
  2. ( 満腹度 $+C_i )\leq K$ のとき $i$ 種類目の料理を食べ、満腹度を( 満腹度 $+C_i$ )に、幸福度を( 幸福度 $+D_i$ )に更新する。

一連の動作を好きなだけ行った後の幸福度の最大値を求めてください。 また、幸福度が最大になるような料理の食べ方が何通りあるかを $998244353$ で割った余りを求めてください。

ただし、料理の食べ方が異なるとは、以下の条件のいずれかを満たすことを言います。

  • 食べた料理の個数が異なる。
  • ある整数 $i$ が存在して、 $i$ 番目に食べた料理の種類が異なる。

制約

  • 入力は全て整数
  • $1\le N\le 1000$
  • $1\le K\le 1000$
  • $1\le C_i,D_i\le 1000 ( 1\le i\le N ) $

入力

$N   K$
$C_1   C_2   ...   C_N$
$D_1   D_2   ...   D_N$

出力

$2$ 行出力してください。

$1$ 行目には幸福度の最大値を整数で出力してください。

$2$ 行目には幸福度が最大になるような料理の食べ方が何通りあるかを $998244353$ で割った余りを整数で出力してください。

サンプル

サンプル1
入力
3 5
2 3 5
1 10 11
出力
11
3

$1$ 種類目の料理、 $2$ 種類目の料理の順で食べることで幸福度が $11$ になります。幸福度が $11$ を超えることはないので幸福度の最大値は $11$ です。

他に幸福度が $11$ になる食べ方は $2$ 種類目の料理、 $1$ 種類目の料理の順に食べる方法と、 $3$ 種類目の料理だけ食べる方法の $2$ 通りあります。

サンプル2
入力
3 1
2 4 1000
800 900 1000
出力
0                
1

何も食べられない場合もあることに注意してください。

サンプル3
入力
2 100
1 1
1 1
出力
100                
882499718

$998244353$ で割った余りを出力してください。

サンプル4
入力
6 21
4 4 5 5 6 7
6 7 8 9 10 11
出力
37               
9

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。