본문 바로가기

카테고리 없음

Til 24.03.28 프로그래머스 파이썬 (파이썬에서 절댓값을 구하는 함수abs())

>><99 부분 문자열 이어 붙여 문자열 만들기

 

길이가 같은 문자열 배열 my_strings와 이차원 정수 배열 parts가 매개변수로 주어집니다.

 parts[i]는 [s, e] 형태로, my_string[i]의 인덱스 s부터 인덱스 e까지의 부분 문자열을 의미합니다. 

각 my_strings의 원소의 parts에 해당하는 부분 문자열을 순서대로 이어 붙인 문자열을 return

 

#부분문자열 이어붙여 문자열 만들기

def solution (mys, parts):
    answer =''
    for i in range (len(parts)):# parts 리스트의 각 요소에 대해 반복
        s,e = parts[i] # 현재 요소의 시작 인덱스와 끝 인덱스를 가져옴
        answer += mys[i][s:e+1]
    return answer
 

 

 

>>>100 주사위 게임 1

 

1부터 6까지 숫자가 적힌 주사위가 두 개 있습니다. 두 주사위를 굴렸을 때 나온 숫자를 각각 a, b라고 했을 때 얻는 점수는 다음과 같습니다.

a와 b가 모두 홀수라면 a2 + b2 점을 얻습니다.
a와 b 중 하나만 홀수라면 2 × (a + b) 점을 얻습니다.
a와 b 모두 홀수가 아니라면 |a - b| 점을 얻습니다.
두 정수 a와 b가 매개변수로 주어질 때, 얻는 점수를 return

 

#주사위 게임

def solution (a,b):
    answer = 0
    if a%2 == 1 and b%2 == 1:
        answer += a**2 +b**2
    elif a%2 ==1 or b%2 ==1 :
        answer +=2*(a+b)
    else :
        answer += abs(a-b) #절대값을 나타내는함수 abs
    return answer
 

 

파이썬에서 절댓값을 구하는 함수는 abs()

 

>>> 101 배열의 원소 삭제하기

 

정수 배열 arr과 delete_list가 있습니다

arr의 원소 중 delete_list의 원소를 모두 삭제하고

남은 원소들은 기존의 arr에 있던 순서를 유지한 배열을 return

 

#배열의 원소 삭제하기
def solution (arr,del_l):
    answer =[]
    for i in arr:
        if i not in del_l:#i가 딜렛리스트 안에 없으면 추가
            answer.append(i)
    return answer
 

 

>>> 102 꼬리문자열

 

문자열들이 담긴 리스트가 주어졌을 때, 

모든 문자열들을 순서대로 합친 문자열을 꼬리 문자열이라고 합니다. 

꼬리 문자열을 만들 때 특정 문자열을 포함한 문자열은 제외시키려고 합니다. 

예를 들어 문자열 리스트 ["abc", "def", "ghi"]가 있고 문자열 "ef"를 포함한 문자열은 제외하고 꼬리 문자열을 만들면 "abcghi"가 됩니다.

문자열 리스트 str_list와 제외하려는 문자열 ex가 주어질 때,

str_list에서 ex를 포함한 문자열을 제외하고 만든 꼬리 문자열을 return

 

 

#꼬리 문자열

def solution(str_list, ex):
    answer = ""
    for i in str_list :# 제외하려는 문자열을 포함하지 않는 경우에만 결과에 추가
        if ex not in  i:
            answer += i
    return answer

!!!제외하려는 문자열이 i가 아닌경우~~~!!!!!