[코딜리티] passing cars (python)
728x90
반응형
O(n) 시간에 풀어야하는 문제이다
0 일 경우 현재 차의 개수 cur을 +1해주며 1을 만날 경우 현재까지 있던 왼쪽에 있던 차의 개수를 전체 sum에다 더하면 된다.
왼쪽에 있는 0의 개수가 1이 만나게 될 차의 개수이기 때문이다.
# you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")
def solution(A):
sum=0
cur=0
for i,car in enumerate(A):
# print(i,cur)
if car==0:
cur+=1
else:
sum+=cur
if sum>1000000000:
return -1
else: return sum
o(n^2)는 효율성 통과를 못하지만 A[i+1:].count(1) 이런식으로 구한 다음 sum에다 더해주면 된다
728x90
반응형
'codility' 카테고리의 다른 글
[codility] Solution to Binary-Gap by codility (python) (0) | 2020.10.14 |
---|---|
[codility] perm missing elem (python) (0) | 2020.10.14 |
[codility] frog river one (python) (0) | 2020.10.14 |
[Codility] lession2 - OddOccurrencesInArray (python, bitwise) (0) | 2020.10.14 |
lesson 2. cyclicrotation (0) | 2020.09.18 |
TAGS.