시험이 끝났다~
1번 2번까지 시간이 얼마 안 걸렸는데 3번 문제를 풀어보고 싶어서 더 앉아있었다.
결국에는 끝까지 풀고 나오지는 못했다. 바로 나와서 3번 문제 오답노트를 썼다.
답안으로 본 건 챗GPT의 답변이다. 너무 AI에 의존하는 게 아닐까 걱정스럽다.
종종 테스트에 통과를 못하면 반례를 만들어 달라하기도 하는데 혼자서 반례를 생각하기란 너무 어렵다. 물론 통하지 않을 때가 있어서 다른 사람들의 코드를 보고 다른 점을 찾아야 하기도 한다.
오늘 풀었던 문제 2개가 if문으로 인해 문제가 있었다.
if문에서 문제 풀이가 꼬인 걸 해결하는 게 어려운 것 같다.
일단 if문에서 잘못되면 내가 생각한 조건이나 상황이나 알고리즘이 잘못되었다고 생각하지 if문을 잘못썼다는 생각까지가지 않는다.
생각보다 if문을 잘 못 쓰나보다. if문을 쓸 때 다음에는 의도를 생각하고 써봐야지
if문과 else if문을 같이 사용했는데 이러면 각각 개별적인 조건이 탐색되지 않는다. 첫번째 if문에서 조건을 확인하고 else if문을 거치는데 한번이라도 통과되면 아래의 조건은 더 이상 확인하지 않기 때문에 생긴 문제였다.
매니저님의 과제를 받고 챗GPT와는 다른 코드(내가 진행한 부분부터 출발)를 작성하는데 여기서는 else if를 써도 된다. 그리고 조건이 맞으면 실행하는 기능은 똑같으니 하나로 ||로 묶을 수 있었다.
- 알고리즘에 대한 이론적인 걸 정비하고
- 유형별로 나눠서 공부해야한다.
- 문제를 보면 어떤 유형의 문제인지 인지할 것
- '이건 시간복잡도 문제잖아. 나는 시간복잡도 문제는 이렇게 풀기로 했었지'하고 전략을 세울 것
- 문제를 풀고 복기까지 할 필요는 없다. 취업준비 때 보면 다 까먹고 있을 것이다.
알고리즘 문제를 풀 때
주석을 달아 어떻게 문제를 풀 건지 미리 프로세스를 적어둘 것
-> 그렇다면 시간내어 복기할 필요없이 나중에 다시 볼 때도 도움이 된다.
동빈나 유튜브
알고리즘 쪽으로 유명한 유튜브라고 한다.