[Hackerrank] Week3 - Drawing Book

DreamJJW·2023년 3월 31일

문제



코드

책을 스택이라고 생각하면 편하다.
한 페이지당 2페이지가 있으므로 01, 23, 34....이다

만약 찾으려는 페이지 p가 전체 책의 len수 // 2보다 작다면 앞 부분이고, 크다면 뒷부분이므로 p의 크기에 따라 for문을 앞에서 돌지 뒤에서 돌지 결정한다.


def pageCount(n, p):
    book = []
    cnt = 0
    for i in range(0, n + 1, 2):
        book.append((i, i+1))

    if p <= (n // 2):
        for i in book:
            if p not in i:
                cnt += 1
            else:
                break
    else:
        for i in reversed(book):
            if p not in i:
                cnt += 1
            else:
                break
    
    return cnt
profile
간절한 사람

0개의 댓글