본문 바로가기

코딩테스트

(3)
올바른 괄호 문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. def solution(s): answer = True if s[0]==")" or s[-1]=="(": answer=False el..
프로그래머스 같은 숫자는 싫어 def solution(arr): answer = [] temp=[] for i in arr: if i in temp: temp[0]=i else: temp[0]=i answer.append(i) return answer 제시된 코드는 아이디어에 접근하고 있으나, 여전히 몇 가지 문제가 있습니다. 먼저, 코드의 들여쓰기에 일관성이 없으며, temp 리스트를 사용하는 방식이 최적이 아닙니다. temp 리스트를 사용하여 마지막으로 본 숫자를 추적하려는 의도는 좋지만, 이를 위해서는 리스트 대신 단일 변수를 사용하는 것이 더 적절합니다. 또한, if i in temp: 조건은 필요하지 않으며, temp[0]을 설정하는 것만으로는 연속성을 효과적으로 처리할 수 없습니다. def solution(arr): ans..
파이썬 오류 정리 list index out of range index가 설정된 범위를 넘음 정의되지 않았다거나. 'int' object is not iterable for 문에서 iterable(반복 가능)한 걸 요구하지만 그렇지 않음. day = []로 시작하여 빈 리스트 day를 생성한 후, day[0] = 1을 통해 리스트의 첫 번째 요소에 1을 할당하려고 합니다. 하지만 이 코드는 오류를 발생시킵니다. 그 이유는 다음과 같습니다: day = []는 빈 리스트를 생성합니다. 이 시점에서 day 리스트는 요소를 하나도 포함하고 있지 않기 때문에, 인덱스 0을 사용하여 접근하거나 할당하는 것은 불가능합니다. 리스트에 인덱스를 통한 할당을 하려면, 해당 인덱스에 이미 요소가 존재해야 합니다. 즉, 리스트의 크기가 해당 ..