TIL Day 17.

Jen Devver·2024년 3월 7일

내배캠 TIL

목록 보기
18/91

알고리즘 코드카타

str, intlist 로 바꾸지 않고도 풀 수 있다!

내 경우 모음 문제에서 my_string을 list()를 통해서 풀면서
if string[i] not in vowels:
에서 vowels = ['a','e','i','o','u'] 를 지정해주어 풂.

하지만 str 그대로도 풀 수 있다.
다른 사람 풀이를 참고해보니
for char in my_string:
	if char not in "aeiou"
로 해서 결과값만 리스트에 담아서 풂.

try, except
try:

문자열 다루기

* 쌍따옴표와 홑따옴표는 같은 역할. string 안에 ""가 있다면 '', ''가 있다면 "".

* 문자열을 출력할 때 
 pi = 3.141592
 f'{pi:.2f}' 하면 소수점 둘째 자리까지 가능

* 문자열 합치는 것
 '+' 를 붙이면 합쳐짐. 안녕+하세요 는 안녕하세요
  하지만 타입이 다르면 안 된다. str+int 는 에러.
  
* 특정 글자 검색, 비교
 위에서 언급한 것처럼 단순히 in, not in 등으로 검색과 비교가 가능함.
 
* len() 함수는 문자열의 길이를 구하는 함수

* sorted() 함수는 ascii(아스키) 코드 값 기준으로 낮은 값부터 정렬

* 변수.count('찾으려는 문자, 문자열') 함수는 문자나 문자열이 몇 개 있는지 세준다.

* 변수.index('찾고 싶은 문자') 함수는 그 문자의 인덱스 번호를 알려준다.

* 회문(palindrome)을 풀려면 string[::-1]을 사용
  string[start,end,step]

재귀 함수 복습

재귀함수는 자기 자신을 호출하는 함수
탈출 조건, 즉 기저 사례가 필요함.
피보나치 수열과 같이 재귀함수가 두 개씩 들어있는 것도 가능.

피보나치 수열 참고!
def fibonacci(number):
    if number == 0:
        print("0으로 끝!")
        return 0
    elif number == 1:
        print("1로 끝!")
        return 1
    else:
        print(f'factorial_number: {number}')
        result = fibonacci(number - 1) + fibonacci(number - 2)
        print("result:", result)
        return result

알고리즘 문제

input()이 헷갈려서 정리 필요함.

Today I Thought

input이 2차원이어서 여전히 헷갈리고 모르는 부분도 많지만, 오늘은 스스로 풀어낸 문제도 좀 있어서 약간 뿌듯하긴 하다. 백준에도 조금 더 익숙해졌고 아주 조금씩 발전해나가고 있다는 느낌이 든다. 알고리즘 강의도 새로 받아서 듣고 싶은데.. 하루가 24시간보다 더 길었으면 좋겠다... 내가 이런 생각을 할 줄이야.

profile
발전 중...

0개의 댓글