해결된 질문
작성
·
172
·
수정됨
답변 1
0
마지막 배열의 값이 왜 {2, 4, ...}가 되는지 모르시겠다는 말씀이실까요?
우리가 구하는 값은 result의 특정 인덱스의 값입니다. 그리고 그것은 1로 매 반복문마다 초기화됩니다.
저 부등호가 true가 되면 해당 인덱스의 값을 ++해서 넣습니다. 1개가 있다면 1이 2로 바뀌죠.
저희가 true 갯수를 구한 이유가 바로 그것입니다. 몇개가 true인지 알아야 몇번 올려야 하는 지 알 수 있으니까요.
오른쪽에 뜨는 설명 첫줄을 보면 반복문에 들어올 때 초기값을 알 수 있습니다.
거기에다가 true의 갯수만큼 ++해줘야 하는 것입니다.
이해에 도움이 되셨을까요?
1에 더하는 이유요?
매 for문 초기화할 때 1부터 시작하게 되어있습니다.
저기 보시면 for문 바로 아래에 result[i] = 1;로 되어있습니다.
result[0] = 1
result[1] = 1
result[2] = 1
result[3] = 1
result[4] = 1
매번 i가 바뀌면서 그 부분이 1로 초기화되고,
아래 반복문에서 해당 1을 ++해서 증가시키기 때문에 1부터 하나씩 더하는 것입니다.
선생님 안녕하세요. 동일질문에서 추가적으로 혹시
result값이 초기화 되고, if문을 통하여 나온 true의 값들을 result=1+{true값의 개수}를 통하여 ,[result]포인트 변수에 넣는거구나라고 이해했습니다.
다만, 여기서 true의 값을 result 값 1에 더하는 이유를 좀 알 수 있을까요?
영상을 보았을때 이렇게 풀리는거구나는 알지만 정작 혼자서 풀때 기출이 변형될 시, 어려움을 겪을것 같습니다..