CodeWars 열 여섯 번째 문제
Updated:
Equal Sides Of An Array
public static int findEvenIndex(int[] arr) {
int leftSum = 0;
int rightSum = Arrays.stream(arr).sum()-arr[0];
if(leftSum == rightSum) {
return 0;
}
for(int i = 1; i < arr.length; i++) {
leftSum = leftSum + arr[i-1];
rightSum = rightSum - arr[i];
if(leftSum == rightSum) {
return i;
}
}
return -1;
}
*위 코드는 사실 내가 짠게 아니다… 내가 생각한건 왼쪽부터 HashMap으로 key값을 인덱스, value값을 배열의 합으로 쭉 모은 다음 오른쪽부터 순환하면서 HashMap에 담겨있는 value 값을 비교하려고 했다. 그러나 위에 코드 처럼 신박한 코드를 태형이와 진호랑 공부하며 보게 되었다… 하.. 좌절감이 들었지만 공부하면 나도 언젠가 저렇게 생각 할 수 있지 않을가 생각을 한다. 현타가 쎄게 왔지만 열심히 해보자