본문 바로가기
728x90

Problem Solving103

[Swift] 프로그래머스 기사단원의 무기(lv. 1) [Swift] 프로그래머스 기사단원의 무기(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 약수의 개수를 세는 로직이 가장 중요하다. number가 10만이기 때문에 O(N) 시간으로 약수를 찾으면 타임 오바가 난다. 여기서는 루트까지만 약수의 개수를 셌다. 약수를 세려고 전체를 세지 않아도 되기 때문이다. 예를 들어보자면, 16의 경우 1, 2, 4, 8, 16 이렇게 약수가 존재하는데, 16을 1, 2, .. 2023. 2. 15.
[Swift] 프로그래머스 크레인 인형뽑기 게임(lv. 1) [Swift] 프로그래머스 크레인 인형뽑기 게임(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/64061 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 포인트 1) 각 캐릭터는 숫자로 표시되며, 숫자가 같으면 같은 캐릭터이다. 이차원 배열로 입력이 주어지고, moves로는 특정한 열의 위치가 주어져 있다. 한 번의 반복마다 그 열로 가서 '인형을 뽑거나 허탕을 쳐야'한다. 포인트 2) 예시 설명에서 맨 오른쪽에 있는 부분이 스택과도 같다. 그렇다면, moves가 만.. 2023. 2. 14.
[Swift] 프로그래머스 키패드 누르기(lv. 1) [Swift] 프로그래머스 키패드 누르기(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/67256 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 문제를 잘 읽어보면 왼쪽의 1, 4, 7은 왼손으로, 오른쪽의 3, 6, 9는 오른손으로 필히 누르게 되어 있다. 그렇다면, 2, 5, 8, 0을 누를 때의 규칙만 잘 정해주면 된다. 2, 5, 8, 0을 눌러야 할 때는 양손 중에 "그 버튼과 현재 가까이 있는 위치의 손으로 누른다"라고 하였다. 그러면 현재 위치를 계속 .. 2023. 2. 13.
[Swift] 프로그래머스 숫자 짝꿍(lv. 1) [Swift] 프로그래머스 숫자 짝궁(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 "두 수에서 공통된 숫자를 모아서 가장 큰 수를 만들어라" 요약하면 이렇게 된다. 그러면 0~9까지의 수만 하나씩 필터링 하면서 세면 되지 않을까? 그리고 나중에 이 숫자를 다시 내림차순으로 정렬해야 하는데, 그 개수를 index로 활용해서 세면 되지 않을까? 라는 생각이 들었다. 정렬의 방식 중 계수 정렬이 떠올랐고, 이를.. 2023. 2. 10.
[Swift] 프로그래머스 명예의 전당 (1)(lv. 1) [Swift] 프로그래머스 명예의 전당 (1)(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 honorList 라는 배열의 크기가 k가 넘지 않게끔 조절해주면서, 매번 내림차순으로 정렬하면서 마지막 인덱스의 원소를 계속 구해주면 되는 문제였다. honorList의 크기가 3이 되는 순간부터, 마지막 숫자가 score[i] 보다 작다면, honorList의 마지막 수를 새로운 score[i]로 바꾸고 sort.. 2023. 2. 9.
[Swift] 프로그래머스 체육복(lv. 1) [Swift] 프로그래머스 체육복(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 여벌 체육복이 있는 학생만 다른 학생에게 체육복을 빌려줄 수 있습니다. 여벌 체육복을 가져온 학생이 체육복을 도난당했을 수 있습니다. 이때 이 학생은 체육복을 하나만 도난당했다고 가정하며, 남은 체육복이 하나이기에 다른 학생에게는 체육복을 빌려줄 수 없습니다. 이 두 가지 조건을 가볍게 보았다가 한 번 코드를 쓰고 엎었다. 여벌이.. 2023. 2. 8.
728x90