Cosa c'è di sbagliato nel codice? Risulta in RE in google Kickstart 2020 Round A
Aug 22 2020
Cosa mi manca qui in questo codice? Risulta in RE in Kickstart 2020 ma quando provo sul mio computer locale o sul compilatore di hackereath (simile al compilatore codejam) il codice funziona bene.
collegamento problema:https://codingcompetitions.withgoogle.com/kickstart/round/000000000019ffc7/00000000001d3f56
def solve(a,balance):
a.sort()
house_Can_buy=0
for i in a:
if i<=balance:
house_Can_buy+=1
balance-=i
return house_Can_buy
def main():
a=int(input())
arr2,res=[],[]
for i in range(a):
_,balance=list(map(int,input().split()))
arr2=list(map(int,input().split()))
result=solve(arr2,balance)
res.append(result)
for i,j in enumerate (res):
print(f'Case #{i+1}: {j}')
main()
Risposte
1 YashShah Aug 22 2020 at 07:43
All'istruzione print in cui l'uso di f risulta in RE.
Nell'istruzione print, dovresti usare format per produrre i + 1 e j.
Per superare tutti i casi di test è necessario ordinare l'array per calcolare il numero di case con il metodo avido.
def solve(a,balance):
house_Can_buy=0
a.sort()
for i in a:
if i<=balance:
house_Can_buy+=1
balance-=i
return house_Can_buy
def main():
a=int(input())
arr2,res=[],[]
for i in range(a):
_,balance=list(map(int,input().split()))
arr2=list(map(int,input().split()))
result=solve(arr2,balance)
res.append(result)
for i,j in enumerate (res):
print('Case #{}: {}'.format(i+1,j))
main()