[프로그래머스 | 파이썬 / 자바스크립트] 삼각형의 완성조건 (2)(코딩테스트 입문/ level 0)

2023. 2. 23. 08:43·Problem Solving/프로그래머스
반응형
문제

https://school.programmers.co.kr/learn/courses/30/lessons/120868?language=python3 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

🐍파이썬
def solution(sides):
return len([i for i in range(max(sides) - min(sides) + 1, max(sides) + 1)]) + len([i for i in range(max(sides) + 1, sum(sides))])

sides = [11, 7] 인 경우 --- min(sides) = 7, max(sides) = 11  // 새로운 선분 c

1️⃣ 11이 가장 긴 선분일 경우

  • 새로운 선분 c는 11과 같거나 11보다 짧아야 한다 --- range(  ? , max(sides) + 1)
  • c + 7은 11보다 길어야 한다. --- range(max(sides) - min(sides) + 1 , max(sides) + 1)

2️⃣ 새로운 선분 c가 가장 긴 선분일 경우

  • c는 11보다 길어야 한다 --- range(max(sides),  ?  )
  • c는 7 + 11보다 작아야 한다 --- range(max(sides), sum(sides))

3️⃣ 두 리스트 원소의 갯수를 더한다.

 

 

다른 풀이 방법

def solution(sides):
return sum(sides) - max(sides) + min(sides) - 1

def solution(sides):
return 2 * min(sides) - 1

sides = [11, 7] 인 경우 --- min(sides) = 7, max(sides) = 11  // 새로운 선분 c

1️⃣ 11이 가장 긴 선분일 경우

  • 새로운 선분 c는 11과 같거나 11보다 짧아야 한다 (c <= 11)
  • c + 7은 11보다 길어야 한다 (c <= 11 < c+7)  == (11-7 <= c)
  • 따라서 c의 범위는 (11-7 <= c < 11), c의 갯수는 7

2️⃣ 새로운 선분 c가 가장 긴 선분일 경우

  • 위와 동일하게 c의 갯수는 7

3️⃣ 새로운 선분 c와 11의 값이 동일한 경우

  • 1️⃣, 2️⃣에서 중복 체크되었으므로 -1

프로그래머스 풀이에 달린 답글로 정리한 내용. 잘 이해는 안 간다...

출처: https://school.programmers.co.kr/learn/courses/30/lessons/120868/solution_groups?language=javascript 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

🐥자바스크립트
function solution(sides) {
var answer = 0;
for(let i = Math.max(...sides) - Math.min(...sides) + 1; i <= Math.max(...sides); i++){
answer++;
}
for(let i = Math.max(...sides) + 1; i < sides[0] + sides[1]; i++){
answer++;
}
return answer;
}

❗ Math.max(), Max.min() 메소드에 매개변수로 배열을 넣기

Math.max(), Math.min() 메소드에 매개변수로 배열을 전달할 경우, 배열 객체를 단일항목으로 인식하기 때문에 NaN이 반환된다.

const array = [7, 11];
console.log(Math.min(array)); // NaN

... 연산자를 이용하면 올바른 min, max값을 구할 수 있다.

const array = [7, 11];
console.log(Math.min(...array)); // 7

출처: https://sisiblog.tistory.com/256

 

[javascript] 자바스크립트 배열에서 최대/최소 구하는 방법 (min, max)

참고: https://stackabuse.com/javascript-get-min-and-max-element-of-array/ JavaScript를 쓰다보면 사용자에게 통계를 보여줘야 하거나 슬라이더의 경계를 설정할 경우 배열에서 최소 값과 최대 값을 알아내야 할 때

sisiblog.tistory.com

 

다른 풀이 방법

function solution(sides) {
return Math.min(...sides)*2-1
}

파이썬의 <다른 풀이 방법> 2번과 동일

 

 

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Problem Solving > 프로그래머스' 카테고리의 다른 글

[프로그래머스 | 파이썬 / 자바스크립트] 할인 행사(연습문제/ level 2)  (0) 2023.02.23
[프로그래머스 | 파이썬 / 자바스크립트] 카드 뭉치(연습문제/ level 1)  (0) 2023.02.23
[프로그래머스 | 파이썬 / 자바스크립트] 배열 뒤집기(코딩테스트 입문/ level 0)  (0) 2023.02.23
[프로그래머스 | 파이썬 / 자바스크립트] 모음제거(코딩테스트 입문/ level 0)  (0) 2023.02.22
[프로그래머스 | 파이썬 / 자바스크립트] 둘만의 암호(연습문제/ level 1)  (0) 2023.02.22
[프로그래머스 | 파이썬 / 자바스크립트] 순서쌍의 개수(코딩테스트 입문/ level 0)  (0) 2023.02.22
'Problem Solving/프로그래머스' 카테고리의 다른 글
  • [프로그래머스 | 파이썬 / 자바스크립트] 카드 뭉치(연습문제/ level 1)
  • [프로그래머스 | 파이썬 / 자바스크립트] 배열 뒤집기(코딩테스트 입문/ level 0)
  • [프로그래머스 | 파이썬 / 자바스크립트] 모음제거(코딩테스트 입문/ level 0)
  • [프로그래머스 | 파이썬 / 자바스크립트] 둘만의 암호(연습문제/ level 1)
청량리 물냉면
청량리 물냉면
프로그래밍 공부를 하고 있습니다. 공부 내용 정리 겸 정보 공유를 목적으로 합니다.
    반응형
  • 청량리 물냉면
    노력중인 블로그
    청량리 물냉면
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 프로그래밍
        • Programming
        • C | C++
        • Java
        • Python
      • 웹 프로그래밍
        • HTML | CSS
        • JavaScript | TypeScript
        • React
        • Vue.js
        • Next.js
        • Spring & Spring Boot
        • JSP & Servlet
        • DB
      • 웹 프로젝트
        • 웹 프로젝트
        • 🥨스낵몰
        • 👨‍👨‍👧‍👧소셜 가계부
        • 🌜꿈 일기장
        • 🔮포트폴리오 사이트
        • 🏃‍♂️팀 프로젝트: 일정관리 프로그램
        • 📈팀 프로젝트: AI기반 주식 분석 플랫폼
        • 😺Just Meow It: 고양이의 조언
      • 앱 프로그래밍
        • Flutter
        • Kotlin
      • Problem Solving
        • 백준
        • 프로그래머스
        • SWEA
      • Computer Science
        • 알고리즘
        • 컴퓨터 네트워크
        • 이산수학
      • Developer
        • 후기
        • 자료정리
        • 취업 | 취준
        • 웹개발 교육 프로그램
        • TIL
  • 블로그 메뉴

    • 홈
    • Github
  • 공지사항

    • 프로그래밍 공부 중😊
  • 인기 글

  • 태그

    React
    자바스크립트
    웹사이트
    백준
    Jiraynor Programming
    타입스크립트
    클론 프로젝트
    SWEA
    공식문서
    리액트
    뉴렉처
    플러터
    강의내용정리
    spring boot
    AWS
    Til
    bfs
    자바
    파이썬
    알고리즘
    d3
    mysql
    컴퓨터네트워크
    프로젝트
    Next.js
    포트폴리오
    블로그 제작
    ZeroCho
    프로그래머스
    구현
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
청량리 물냉면
[프로그래머스 | 파이썬 / 자바스크립트] 삼각형의 완성조건 (2)(코딩테스트 입문/ level 0)

개인정보

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

티스토리툴바

단축키

내 블로그

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

블로그 게시글

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

모든 영역

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

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