結果
問題 | No.1701 half price |
ユーザー | MasKoaTS |
提出日時 | 2021-10-31 17:37:19 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 638 ms / 3,000 ms |
コード長 | 1,001 bytes |
コンパイル時間 | 780 ms |
コンパイル使用メモリ | 82,560 KB |
実行使用メモリ | 89,972 KB |
最終ジャッジ日時 | 2024-10-09 05:13:12 |
合計ジャッジ時間 | 6,336 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 131 ms
86,708 KB |
testcase_01 | AC | 134 ms
87,224 KB |
testcase_02 | AC | 179 ms
89,760 KB |
testcase_03 | AC | 138 ms
86,976 KB |
testcase_04 | AC | 178 ms
89,388 KB |
testcase_05 | AC | 147 ms
89,196 KB |
testcase_06 | AC | 635 ms
89,412 KB |
testcase_07 | AC | 638 ms
89,664 KB |
testcase_08 | AC | 133 ms
86,532 KB |
testcase_09 | AC | 132 ms
87,332 KB |
testcase_10 | AC | 131 ms
86,160 KB |
testcase_11 | AC | 133 ms
87,384 KB |
testcase_12 | AC | 142 ms
89,436 KB |
testcase_13 | AC | 132 ms
86,996 KB |
testcase_14 | AC | 135 ms
86,848 KB |
testcase_15 | AC | 134 ms
87,068 KB |
testcase_16 | AC | 136 ms
86,528 KB |
testcase_17 | AC | 255 ms
89,884 KB |
testcase_18 | AC | 147 ms
89,292 KB |
testcase_19 | AC | 143 ms
89,972 KB |
testcase_20 | AC | 133 ms
86,528 KB |
testcase_21 | AC | 629 ms
89,656 KB |
ソースコード
import itertools as iter import collections as coll import heapq as hq import bisect as bis from decimal import Decimal as dec from copy import deepcopy as dcopy import math import sys sys.setrecursionlimit(10**6) def input(): return sys.stdin.readline().rstrip() def getN(): return int(sys.stdin.readline().rstrip()) def getNs(): return map(int,sys.stdin.readline().rstrip().split()) def getList(): return list(map(int,sys.stdin.readline().rstrip().split())) def strinps(n): return [sys.stdin.readline().rstrip() for _ in range(n)] pi = 3.141592653589793 mod = 10**9+7 MOD = 998244353 INF = math.inf dx = [1,0,-1,0]; dy = [0,1,0,-1] """ Main Code """ n,w = getNs() a = getList() l = [0,1,2] st = set([]) for choice in iter.product(l,repeat = n): price = 0 bit = 0 for i in range(n): if(choice[i] != 0): bit |= 1 << i if(choice[i] == 1): price += a[i] // 2 elif(choice[i] == 2): price += a[i] if(price == w): st.add(bit) ans = len(st) if(0 in st): ans -= 1 print(ans)