
이 문제를 보고 배열을 교차로 재 설정 해서 배열을 차례로 더하는 방식을 생각한게 놀랍다. 난 이걸 생각을 못했다. (역시 허접) 적용해보니 역시 예쁘다 아무튼 어떻게는 풀었을 것 같긴 하다. 더해주는 인덱스가 가장 중요한데 나는 배열이 아닌 stringbuilder로 계속 문자열을 더해주면서 변환해주었다가 바꿨는데 역시 이게 훨씬 낫다
// 배열을 재 설정
Integer[] arr = new Integer[16];
for (int i = 0; i < 16; i++) {
if (i % 2 == 0) {
arr[i] = Integer.valueOf(a.charAt(i / 2)+"");
} else {
arr[i] = Integer.valueOf(b.charAt(i / 2)+"");
}
}
// index + (index + 1) 더해주기
List<Integer> list = Arrays.asList(arr);
while (list.size() > 2) {
List<Integer> temp = new ArrayList<>();
for (int d = 0; d < list.size() - 1; d++) {
temp.add((list.get(d) + list.get(d+1)) % 10);
}
list = temp;
}