출처: https://typemin.tistory.com/7 [TypeLOG:티스토리]

 

 

첫 문제를 풀었을 때가 생각이 납니다. 처음에는 그냥 재밌고 뭔가 멋있어 보였던 "개인적인 욕심"이 들어있었습니다.

별 찍기 문제를 풀었었는데 너무 재밌었죠. 이렇게 시작했던 문제풀이가 어느덧 4년 차가 되었습니다.

문제를 풀기가 너무 어려워  책도 읽고 관련 블로그도 찾아보고, 푸는 방식에 대한 변화도 주고 여러 방법으로 접근을 했었습니다. 

언어의 선택


처음에는 C언어로 시작하였고 C++ 그리고 Java, Python 등 많은 언어로 문제를 풀어봤습니다. 

어떤 글에서는 그냥 Python쓰세요,  C++ 쓰세요 , 현업에서 사용하시는 언어 사용하세요 등 많은 의견이 있었습니다. 

저도 현업에서는 Java를 써서 Java로 100문제 가량 풀어봤는데요. 

사실 Java는 내가 표현하고 싶은 알고리즘을 표현하기 위해 많은 코드를 작성해야 돼서 "저한테는 좀 난해한"면이 있어 , 첫 시작 그리고 가장 익숙했던 C언어 계열인 C++을 사용하여 문제풀이를 지속하였습니다. 

사실 언어 자체가 어려웠던 것을 제외하면 가장 편하고, 직관적으로 제가 코드를 조작할 수 있어서 빠르게 실력이 늘 수 있었습니다.

코딩보단 생각을 


대학교 시절부터 개발을 꾸준히 해왔지만 항상 느꼈던 것은 "생각의 부족함" 이었습니다. 

개발뿐만이 아니라 실 인생에 걸쳐서 항상 배워왔던 것이었습니다.

늘 후회했어요. "이러기 전에 한번 더 생각해볼걸" 이라고요, 항상 생각의 부족함으로 시작한 문제 해결은 점차 꼬여버린 문제 마주하게 되고 해결하는 비용은 늘 더 많이 들었습니다. 

문제풀이를 하면서도 뼈저리게 느꼈는데요.. 문제에서 제공되는 작게는 N의 크기라든가 시간복잡도, 공간복잡도, 자료구조 등 조금만 생각을 하고 계산을 하고 코딩을 시작했더라면 코드를 돌려보기 전에 빠르게 캐치하여 더 빠르게 성장할 수 있었을 거 같습니다. 

사실 이 부분에 있어서는 아직도 많이 부족하지만, 계속해서 성장해나가고 있습니다. 

 

조금 더 성장하기 위해


사실 아직 나는 백준 플레다!라고 말하기에는 많이 부족합니다. 실버, 골드 문제 티어와 상관없이 저한테는 어려운 문제는 늘 있었으니까요. 

앞으로는 이러한 컨디션의 기복을 많이 없애기 위해서 날을 예리하게 가는 시간을 가지려고 합니다. 

 

감사합니다.

반응형

+ Recent posts