【스터디노트】/▷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];

}


  - 무엇을 새롭게 알았는지


  - 내일 학습할 것은 무엇인지