오늘도 알고리즘을 위주로 한 하루였다.
하루종일 퍼즐을 푸는 것 같다. 뭔가 실마리가 잡힐 것 같으면서, 놓치고 돌아가고 다시 하는 고통의 반복이다.
근데 나름 또 풀면 기쁜 맛과 함께 내가 무언가를 하고 있다는 실감이 되는 것 같아서 그래도 오랫동안 할 수 있다고 생각한다. 분명 간단한 것이지만, 한 문제에 한 시간 이상을 태우거나 반대로 한 5분 안으로 풀어버리는 등 시간은 각각 다르지만 생산성이 적다는 것은 맞다. 하지만 나름대로 자기 효능감이 느껴지기 때문에 즐겁다.
그러나 알고리즘을 진행하는 것과 더불어, 앞으로 있을 스프링 주특기에 대한 걱정으로 인하여 잠시 놓아두었던 Java 강의를 다시 듣는 계기를 가졌다.
듣기는 하지만 강의만 들으면 잠들어 버리는 내 몸은 방법이 없는 것 같다.
오늘 하루의 정리는 알고리즘을 풀면서 가장 어이없거나 신기했던 코드이다.
if(a%2 == 1 ) answer = s.substring(a/2 ,a/2 +1);
else if (a%2 != 1) {answer = s.substring(a/2 -1, a/2+1);}
이 기능은 파이썬의 슬라이스와 같은 기능으로 문자를 잘라 주는 기능을 한다. 근데 이 와중에 어디가 시작점이며, 끝인지 정확하게 알지 못하여 숫자를 더하고 빼면서 고생한 것이 생각난다.