Submission #122999

#TimeUsernameProblemLanguageResultExecution timeMemory
122999model_codeKitchen (BOI19_kitchen)Cpython 2
0 / 100
14 ms3016 KiB
import array N = 300 n,m,k = [int(x) for x in input().split()] a = [int(x) for x in input().split()] b = [int(x) for x in input().split()] supply = array.array('i', [-N*N for i in range(N*N+1)]) supply[0] = 0; def solve(): if(min(a) < k): return 'Impossible' bsum = 0 for x in b: bsum += x for i in range(bsum,-1,-1): supply[i+x] = max(supply[i+x],supply[i]+min(x,n)) for i in range(sum(a),N*N+1): if(supply[i] >= n*k): return i-sum(a) return 'Impossible' print(solve())
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...