結果
問題 |
No.1463 Hungry Kanten
|
ユーザー |
|
提出日時 | 2021-07-31 23:29:37 |
言語 | Kuin (KuinC++ v.2021.9.17) |
結果 |
AC
|
実行時間 | 1,738 ms / 2,000 ms |
コード長 | 934 bytes |
コンパイル時間 | 2,346 ms |
コンパイル使用メモリ | 163,416 KB |
実行使用メモリ | 16,256 KB |
最終ジャッジ日時 | 2025-06-20 01:38:18 |
合計ジャッジ時間 | 7,849 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 24 |
ソースコード
func main() var n: int :: cui@inputInt() var k: int :: cui@inputInt() var a: []int :: #[n]int for i(0, n - 1) do a[i] :: cui@inputInt() end for var rnd: lib@Rnd :: lib@makeRnd(lib@sysTime() $ bit32) var ans: int :: 0 var use: []bool :: #[n]bool for(1, 4) var map: dict<int, bool> :: #dict<int, bool> var mod: int :: rnd.rnd(2 ^ 50, 2 ^ 51) for ii(0, 2 ^ n - 1) var id: int :: ii var cnt: int :: 0 for i(0, n - 1) do use[i] :: (id % 2 = 1) if(use[i]) do cnt :+ 1 end if do id :/ 2 end for if(cnt >= k) var mul: int :: 1 for i(0, n - 1) if(use[i]) do mul :* a[i] do mul :% mod end if end for do map.add(mul, true) var sum: int :: 0 for i(0, n - 1) if(use[i]) do sum :+ a[i] end if end for do map.add(sum, true) end if end for do ans :: lib@max(ans, ^map) end for do cui@print("\{ans}\n") end func