TIL & WIL

[TIL] 22.06.06

작은코딩 2022. 6. 6. 18:09

 


👀 오늘 한 일

  • 프로그래머스 알고리즘 풀기 python lv 1

 

📚 오늘 배운 것

  • isdigit() : 문자열이 숫자인지 아닌지 판별하는 함수 
a = "123"
b = "a123"
print(a.isdigit())
print(b.isdigit())

 

😄 오늘의 TMI

[두 정수 사이의 합] https://programmers.co.kr/learn/courses/30/lessons/12912

def solution(a, b):
    answer = 0
    for i in range(min(a,b),max(a,b)+1):
        answer += i
    return answer

 

[문자열 내 마음대로 정렬하기] https://programmers.co.kr/learn/courses/30/lessons/12915

def solution(strings, n):
    strings.sort()
    return sorted(strings, key=lambda x: x[n])

 

 

[문자열 내 p와 y의 개수] https://programmers.co.kr/learn/courses/30/lessons/12916

def solution(s):
    answer = True
    s = s.lower()
    if s.count("p") != s.count("y"):
        answer = False
    return answer

 

[문자열 내림차순으로 배치하기] https://programmers.co.kr/learn/courses/30/lessons/12917

def solution(s):
    return "".join(sorted(s, reverse = True))

 

[문자열 다루기 기본] https://programmers.co.kr/learn/courses/30/lessons/12918

def solution(s):
    answer = True
    if len(s) not in [4,6]:
        return False
    
    try:
        for i in s:
            int(i)
    except ValueError:
        answer = False
    return answer

 

[서울에서 김서방 찾기] https://programmers.co.kr/learn/courses/30/lessons/12919

def solution(seoul):
    return f'김서방은 {seoul.index("Kim")}에 있다'

 

[수박수박수박수박수박수?] https://programmers.co.kr/learn/courses/30/lessons/12922

def solution(n):
    answer = ''

    a, b = divmod(n, 2)
    answer += "수박"*a
    
    if b != 0:
        answer += "수"
        
    return answer

 - 슬라이스를 이용한 방법도 있음 ( answer = "수박" * n, return answer[:n])

 

[문자열을 정수로 바꾸기] https://programmers.co.kr/learn/courses/30/lessons/12925

def solution(s):
    return int(s)

int() 함수를 쓰면 간단하게 풀 수 있는데 알고리즘으로 풀어본다면 문자열을 역순으로 만들어주고 if 조건문으로 "-" 면 전체 결과에 -1 곱하기, "+" 면 continue, 둘 다 아니라면 (숫자) * (10 ** index) 

숫자를 구하는 방법은 int()를 사용하지 않는다면 리스트나 딕셔너리 자료 or 아스키코드를 사용해서 구할 수 있다.

'TIL & WIL' 카테고리의 다른 글

[TIL] 22.06.11  (0) 2022.06.11
[TIL] 22.05.01  (0) 2022.05.01
[TIL] 22.04.29  (0) 2022.04.29
[TIL] 22.04.27  (0) 2022.04.28
[TIL] 22.04.26  (0) 2022.04.26