【스터디노트】/▷TIL
코테 스터디 45일차 TIL + 오늘의 학습 키워드 prefix sum
아딜렛
2025. 6. 25. 10:39
- 오늘의 학습 키워드
배열
- 공부한 내용 본인의 언어로 정리하기
수도코드
1. 결과 배열을 만든다
2. 왼-> 오 왼쪽 원소들의 곱을 저장한다.
3. 오->왼 오른쪽 원소들의 곱을 곱해준다.
4. 결과를 반환한다.
ex) nums[1,2,3,4]
rightProduct의 초기값이 1인 이유
nums[3]=4 의 오른쪽에는 아무것도 없기떄문에 곱셈의 항등원소=1 이 들어간다.
int[] result = new int[n];
int로 된 배열, n개 만큼의 크기로 만든다.
rightProduct: 실시간으로 계산해서 바로 사용-> 저장할 필요가 없다.
rightProduct *=nums[i]
- 오늘의 회고
- 어떤 문제가 있었고, 나는 어떤 시도를 했는지
오른쪽 곱을 어떻게 처리해야하는지 잘몰랐고 통으로 곱셈을 할 생각만 했다.
rightProduct는 왜 배열이 아닌가?
- 어떻게 해결했는지
for(int i=n-1; i>=0 ; i--){
result[i] = result[i]* rightProduct;
rightProduct*=nums[i];
}
- 무엇을 새롭게 알았는지
- 내일 학습할 것은 무엇인지