[Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기

2024. 10. 31. 13:40·Algorithm Study

[문제]

두 정수 a, d 와 길이가 n인 boolean 배열 included가 주어집니다.
첫째항이 a, 공차가 d인 등차수열에서 Included[i]가 i + 1 항을 의미할 때,
이 등차수열의 1항부터 n항까지 included가 true인 항들만 더한 값을 return 하는 solution 함수를 작성해주세요.

 

[Algorithm]

반복문에서 조건문을 사용하여 배열의 해당 인덱스가 true 경우의 등차수열 해당 항을 계산해서 더해주기

 

[Code]

class Solution {
    public int solution(int a, int d, boolean[] included) {
        int answer = 0;
        
        for(int i=0; i<included.length; i++) { 
            if (included[i]) {
                answer += a + (i * d);
                continue;
            }
        }
        return answer;
    }
}

 

[+ 다른 사람 풀이]

import java.util.stream.IntStream;

class Solution {
    public int solution(int a, int d, boolean[] included) {
        return IntStream.range(0, included.length).map(idx -> included[idx]?a+(idx*d):0).sum();
    }
}

 

[+ Plus]

* Java Stream

: 데이터 소스를 추상화하여 데이터 소스가 무엇이던 간에 같은 방식으로 다룰 수 있게 되어 코드의 재사용성을 높임

✔️ 데이터 소스를 변경하지 않음

✔️ 일회용

✔️ 작업을 내부 반복으로 처리

 

* IntStream

: 지정된 범위의 연속된 정수를 스트림으로 생성하여 반환

ex. IntStream.range(a, b).map ~

✔️ range는 end를 포함하지 않고, rangeClosed는 end를 포함

 

 

💡 stream 활용에 익숙해지기

한 줄에 끝내다니 천재 ~ ㅜ

 

저작자표시 변경금지 (새창열림)

'Algorithm Study' 카테고리의 다른 글

[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 2  (0) 2025.02.24
[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 3  (1) 2025.02.24
[Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기  (0) 2024.10.30
[Java Algorithm] 프로그래머스: 해시 _ 완주하지 못한 선수  (0) 2024.07.11
[Java Algorithm] 프로그래머스: 해시 _ 폰켓몬  (0) 2024.07.11
'Algorithm Study' 카테고리의 다른 글
  • [Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 2
  • [Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 3
  • [Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기
  • [Java Algorithm] 프로그래머스: 해시 _ 완주하지 못한 선수
microsaurs
microsaurs
개발 스터디로그입니다. 공부한 내용을 정리해서 올립니다 ㅇ-ㅇ
  • microsaurs
    microsaurs.devlog
    microsaurs
  • 전체
    오늘
    어제
    • 분류 전체보기 (138)
      • Side Project (0)
      • Algorithm Study (39)
      • JAVA (8)
      • Swift (11)
      • Python (21)
      • CS (5)
      • React (3)
      • 리얼클래스 studylog (27)
      • 정보처리기사[실기] (23)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    나도코딩
    Java
    파이썬기초
    ios프로그래밍
    파이썬문법
    javaStudy
    리얼학습일기
    SWIFT
    영어독학
    스위프트기초
    리얼클래스
    ios프로그래밍을위한스위프트기초
    더오피스
    study
    자바알고리즘
    영어회화
    The Office
    정보처리기사
    javaalgorithm
    프로그래머스
    정보처리기사실기
    Python
    ios개발
    Algorithm
    파이썬
    알고리즘
    정처기실기
    정보처리기사프로그래밍언어
    타일러영어
    프로그래밍언어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
microsaurs
[Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.