일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Notice
Recent Posts
Recent Comments
Link
Tags
- 배열 순환
- 스프링 부트 배너 설정
- 접속 url 출력
- 프로그래머스 공 던지기 게임
- 프로그래머스 문자열 정렬하기(1)
- cursor 설치
- 숨어있는 숫자의 덧셈 (1) 자바
- 경우의 수 자바
- 배열 순환 문제 공식
- 배열 순환 자바
- cursor 우클릭 메뉴
- 정보처리기사 필기 벼락치기
- 정보처리기사 필기
- 스프링부트 의존성 설정
- 피그마 썸네일
- 자바 합성수 찾기
- 프로그래머스
- 펙토리얼
- 비전공자 정처기 필기
- 스프링 부트 프로젝트 세팅
- 정처기 필기 벼락치기
- 오블완
- 비전공자 정보처리기사 필기
- 자바 소인수분해
- spring boot 배너 설정
- 자바 팩토리얼
- string과 stringbuilder 성능 최적화
- 왓챠피디아 클론 코딩
- 소인수분해 구하는 공식
- 티스토리챌린지
Archives
- Today
- Total
여름 언덕에서 배운 것
[0단계]원소들의 곱과 합 본문
class Solution {
public int solution(int[] num_list) {
int answer = 0;
int powSum =0;
int sum =1;
for(int num : num_list){
sum*=num;
powSum +=num;
}
powSum = (int)Math.pow(powSum,2);
return answer= sum < powSum ? 1 : 0 ;
}
}
제곱 Math.pow 사용해봄
첨에 int sum =0; 으로 선언해서 계속 틀리고 있었다
0을 곱하니...계속 0이지...ㅠ ㅋㅋ
** 다른 사람 풀이
import java.util.Arrays;
class Solution {
public int solution(int[] numList) {
return (Arrays.stream(numList).reduce((acc, i) -> acc * i).getAsInt() < Math.pow(Arrays.stream(numList).sum(), 2)) ? 1 : 0;
}
}
/*초깃값 제공*/
import java.util.Arrays;
class Solution {
public int solution(int[] numList) {
return (Arrays.stream(numList).reduce(1,(acc, i) -> acc * i) < Math.pow(Arrays.stream(numList).sum(), 2)) ? 1 : 0;
}
}
1.Arrays.stream(numList)는 배열을 스트림으로 변환합니다.
2..reduce는 스트림의 원소를 누적하여 단일 결과를 생성하는 연산입니다.
- 초깃값 (optional): 연산을 시작하기 전에 기본값을 제공. ( 초깃값 0이 acc에 초기값으로 설정됩니다. )
- 누적 함수: 두 값을 입력받아 새로운 결과를 반환하는 함수. (acc와 element를 처리).
- 결과: 누적된 단일 값.
- 사용 예시
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
// reduce 사용: 모든 값을 더함
int sum = Arrays.stream(numbers)
.reduce(0, (acc, num) -> acc + num);
System.out.println(sum); // 출력: 15
}
}
/*초깃값 없는 예제*/
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
// 초깃값 없이 reduce 사용
int product = Arrays.stream(numbers)
.reduce((acc, num) -> acc * num)
.orElse(0); // 스트림이 비어 있으면 0 반환
System.out.println(product); // 출력: 120
}
}
3. .sum()은 스트림의 모든 원소를 더한 값을 반환합니다.
4. Math.pow를 이용해 합계의 제곱을 구합니다.
728x90
'가랑비에 옷 젖는 줄 모른다 💻 > 🌰코테문풀_꾸준히' 카테고리의 다른 글
[0단계]수 조작하기2 (0) | 2025.01.13 |
---|---|
[0단계] 수 조작하기1 (0) | 2025.01.13 |
[0단계]주사위 게임 2 (0) | 2025.01.13 |
[0단계] 등차수열의 특정한 항만 더하기 (0) | 2025.01.13 |
[0단계] 코드 처리하기 (0) | 2025.01.13 |