[코딩테스트] 프로그래머스 문제 모음

2022. 9. 20. 09:40·개발/알고리즘
728x90
반응형

1. 문자열 내림차순으로 배치하기

 

프로그래머스

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

programmers.co.kr

function solution(s) {
  var answer = "";
  answer = s.split("").sort().reverse().join("");
  return answer;
}

2. 문자열 다루기 기본

 

프로그래머스

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

programmers.co.kr

function solution(s) {
  var answer = true;
  const number = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
  for (let i = 0; i < s.length; i++) {
    if (number.indexOf(+s[i]) == -1) {
      answer = false;
      break;
    }
  }
  if (s.length < 4 || s.length > 6 || s.length == 5) {
    answer = false;
  }
  return answer;
}

다른사람 풀이 본 후

function solution(s) {
  const reg = /^\d{4}$|^\d{6}$/;
  return reg.test(s);
}

 

정규표현식의 test를 통해 boolean값을 return하여 바로 나오게끔 했다.

 

3. 약수의 개수와 덧셈

 

프로그래머스

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

programmers.co.kr

function solution(left, right) {
  var answer = 0;
  for (let i = left; i <= right; i++) {
    const divisor = [];
    for (let k = 1; k <= i; k++) {
      if (i % k == 0) {
        divisor.push(k);
      }
    }
    answer += divisor.length % 2 ? -i : i;
  }
  return answer;
}

다른사람 풀이 본후 : 제곱근이 정수이면 약수의 개수는 짝수이다.

4. 행렬의 덧셈

 

프로그래머스

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

programmers.co.kr

function solution(arr1, arr2) {
  for (let i = 0; i < arr1.length; i++) {
    for (let k = 0; k < arr1[i].length; k++) {
      arr1[i][k] += arr2[i][k];
    }
  }
  return arr1;
}

5. 직사각형 별찍기

 

프로그래머스

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

programmers.co.kr

process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
  const n = data.split(" ");
  const a = Number(n[0]),
    b = Number(n[1]);
  let star = "";
  for (let i = 0; i < b; i++) {
    for (let j = 0; j < a; j++) {
      star += "*";
    }
    console.log(star);
    star = "";
  }
});

다른사람 풀이 본 후 

process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
  const n = data.split(" ");
  const a = Number(n[0]),
    b = Number(n[1]);
  let star = "*".repeat(a);
  for (let i = 0; i < b; i++) {
    console.log(star);
  }
});

repeat을 사용하여 가독성 높임

6. 부족한 금액 계산

 

프로그래머스

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

programmers.co.kr

function solution(price, money, count) {
  var answer = 0;
  let totalPrice = 0;
  for (let i = 1; i <= count; i++) {
    totalPrice += price * i;
  }
  answer = money >= totalPrice ? 0 : totalPrice - money;
  return answer;
}

7. 최솟값 만들기

 

프로그래머스

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

programmers.co.kr

function solution(A, B) {
  var answer = [];

  A.sort((a, b) => a - b);
  B.sort((a, b) => b - a);
  answer = A.reduce((acc, cur, idx) => acc + cur * B[idx], 0);
  return answer;
}
728x90
반응형

'개발 > 알고리즘' 카테고리의 다른 글

[BigO] BigO 표기법  (0) 2022.09.26
[코딩테스트] 최대공약수와 최소공배수  (1) 2022.09.20
[프로그래머스 level2] Jaden Case문자열 만들기  (0) 2022.09.14
[2022.09.13] 프로그래머스 문제 모음  (0) 2022.09.13
[2022.09.12]프로그래머스 문제 모음  (0) 2022.09.13
'개발/알고리즘' 카테고리의 다른 글
  • [BigO] BigO 표기법
  • [코딩테스트] 최대공약수와 최소공배수
  • [프로그래머스 level2] Jaden Case문자열 만들기
  • [2022.09.13] 프로그래머스 문제 모음
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    명령어
    nodejs
    ERC721
    컨테이너
    erc20
    프로그래머스
    블록체인
    node
    React
    html
    go언어
    go
    30일 챌린지
    mysql
    node.js
    CSS
    30일챌린지
    js
    하이퍼레저
    도커
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[코딩테스트] 프로그래머스 문제 모음
상단으로

티스토리툴바