카테고리 없음

[프로그래머스 level_1 /월간 코드 챌린지 시즌 1] 내적 for JAVA

냠냠:) 2021. 4. 28. 21:41

programmers.co.kr/learn/courses/30/lessons/70128

 

코딩테스트 연습 - 내적

길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의

programmers.co.kr

[문제설명]

길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.

이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)


제한사항

  • a, b의 길이는 1 이상 1,000 이하입니다.
  • a, b의 모든 수는 -1,000 이상 1,000 이하입니다.

[풀이]

풀이 1. for문을 돌려 a, b의 요소의 곱을 합친다.

 

풀이 2. IntStream으로 범위를 구해, 그 범위에 해당하는 a, b 값을 곱해주고 한 번에 더해준다.

 

[코드]

	public int solution(int[] a, int[] b) {
//		int result = 0;
//		for(int i = 0; i < a.length; i++) {
//			result += a[i] * b[i];
//		}
//		return result;
		
		return IntStream.range(0, a.length).map(i -> a[i] * b[i]).sum();
	}

 

반응형