인프런 커뮤니티 질문&답변

hwanghsp님의 프로필 이미지
hwanghsp

작성한 질문수

코딩테스트 [ ALL IN ONE ]

[코테 적용] 👉 LIFO 2번 째 문제

VSCode로 확인

해결된 질문

작성

·

354

1

선생님 코드를 보고 이해하고 VSCode로 input을 통해서 확인해보고 싶은데 아직 초보라 잘 모르겠는 점이 있습니다.

 

이렇게 찍어보면 NameError: name 'dailyTemperatures' is not defined 라고 뜨는데

 

직접 input을 넣고 output을 확인하려면 어떻게 코드를 작성해야할까요?

class Solution(object):
    def dailyTemperatures(self, temperatures):
        answer = [0]*len(temperatures)
        stack =[]
        for day, tmp in enumerate(temperatures):
            while stack and stack[-1][1] < tmp:
                prev_day, _ = stack.pop()
                answer[prev_day] = day - prev_day
            # stack이 비어있으면 while문 안타고 바로 append
            stack.append((day, tmp))
        return answer

print(dailyTemperatures([73,74,75,71,69,72,76,73]))

답변 1

0

개발남노씨님의 프로필 이미지
개발남노씨
지식공유자

안녕하세요 hwanghsp님

 

 

class Solution(object):
    def dailyTemperatures(self, temperatures):
        answer = [0]*len(temperatures)
        stack =[]
        for day, tmp in enumerate(temperatures):
            while stack and stack[-1][1] < tmp:
                prev_day, _ = stack.pop()
                answer[prev_day] = day - prev_day
            # stack이 비어있으면 while문 안타고 바로 append
            stack.append((day, tmp))
        return answer

s = Solution()
print(s.dailyTemperatures([73,74,75,71,69,72,76,73]))

 


def dailyTemperatures(temperatures):
    answer = [0]*len(temperatures)
    stack =[]
    for day, tmp in enumerate(temperatures):
        while stack and stack[-1][1] < tmp:
            prev_day, _ = stack.pop()
            answer[prev_day] = day - prev_day
        # stack이 비어있으면 while문 안타고 바로 append
        stack.append((day, tmp))
    return answer

print(dailyTemperatures([73,74,75,71,69,72,76,73]))

 

이렇게 둘 중에 하나의 코드를 선택해서 작성하시면 됩니다!

hwanghsp님의 프로필 이미지
hwanghsp

작성한 질문수

질문하기