알고리즘/문제 8

[프로그래머스] Lv. 1 - [PCCP 기출문제] 1번 / 동영상 재생기

제목: Lv. 1 - [PCCP 기출문제] 1번 / 동영상 재생기시간: 30분 https://school.programmers.co.kr/learn/courses/30/lessons/340213 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr PCCP 기출문제 1번 문제로 나온 동영상 재생기를 풀어봤습니다. 1번 문제답게 일반적으로 실무에서 사용될 만한 내용이었던  것 같아요. 문제를 딱 보자마자, 요구하는 기능들을 함수로 만들고 싶더라구요. 그래서 앞으로 넘기기, 뒤로 넘기기, 스킵하기, 문자열 정수로 만들기 이렇게 4개를 함수로 만들었어요. import Foundationfunc solution(_ ..

알고리즘/문제 2024.11.26

[프로그래머스] Lv. 1 - 달리기 경주

제목: Lv. 1 - 달리기 경주시간: 30분 https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제가 아주 직관적이었다. 문제를 본 느낌대로 일단 코딩을 해봤는데, 역시나 시간초과가 생겼다. import Foundationfunc solution(_ players:[String], _ callings:[String]) -> [String] { var result = players for i in callings { var index = result.fi..

알고리즘/문제 2024.11.24

[프로그래머스] Lv. 1 - 대충 만든 자판

제목: Lv. 1 - 대충 만든 자판시간: 30분https://school.programmers.co.kr/learn/courses/30/lessons/160586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제에 주어진대로 풀면 되는 구현 문제였다. 문제를 보자마자 firstIndex를 사용해서 값을 구하면 되겠다고 생각했다. 그런데 firstIndex로 배열의 Index를 Int 값으로 변환하는게 오래걸렸다. 구글을 통해 오픈 북을 조금 하다... 방법을 찾아냈다. import Foundationfunc solution(_ keymap:[String], _ targets:[String]) -> ..

알고리즘/문제 2024.11.22

[프로그래머스] Lv. 2 - 퍼즐 게임 챌린지

제목: Lv. 2 - 퍼즐 게임 챌린지시간: 1시간 https://school.programmers.co.kr/learn/courses/30/lessons/340212 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이 문제는 일반적인 구현 문제였다. 입출력 예시를 봤을 때 데이터가 꽤 큰걸 알고 있었지만, 일단 구현을 코딩을 했다. 첫 번째 풀이import Foundation// 난이도, 현재 소요시간, 이전 소요시간, 숙련도// 문제 이해하는데 5분func solution(_ diffs:[Int], _ times:[Int], _ limit:Int64) -> Int { var level = dif..

알고리즘/문제 2024.11.20

[프로그래머스] Lv. 2 - 멀리뛰기

제목: Lv. 2 - 멀리뛰기시간: 40분 https://school.programmers.co.kr/learn/courses/30/lessons/12914#qna 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr func solution(_ n:Int) -> Int { var arr = (0.. 멀리 뛰기를 하는 경우의 수를 직접 계산해보면서 나열해보면      // N = 1 : 1    // N = 2 : 2    // N = 3 : 3    // N = 4 : 5    // 1111 : 1    // 112 : 3    // 22 : 1     // N = 5 : 8    // 11111..

알고리즘/문제 2024.11.18

[프로그래머스] Lv. 1 - 바탕화면 정리

제목: Lv. 1 - 바탕화면 정리시간: 20분가볍게 프로그래머스에서 제목이 끌리는대로 한번 풀어봤습니다. https://school.programmers.co.kr/learn/courses/30/lessons/161990 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 바탕화면에 있는 아이콘을 드래그했을 때 어떻게 해야 최소 넓이를 가진 사각형으로 드래그를 할 것인가를 구하는 문제입니다. import Foundationfunc solution(_ wallpaper:[String]) -> [Int] { // 가장자리 왼쪽 위 : 0, 0 (세로, 가로) // 빈칸 . , 파일이 # ..

알고리즘/문제 2024.11.17

[프로그래머스] Lv. 0 - 유한소수 판별하기

프로그래머스 Lv. 0 - 유한소수 판별하기 바로가기 https://school.programmers.co.kr/learn/courses/30/lessons/120878 문제 문제 설명 소수점 아래 숫자가 계속되지 않고 유한개인 소수를 유한소수라고 합니다. 분수를 소수로 고칠 때 유한소수로 나타낼 수 있는 분수인지 판별하려고 합니다. 유한소수가 되기 위한 분수의 조건은 다음과 같습니다. 기약분수로 나타내었을 때, 분모의 소인수가 2와 5만 존재해야 합니다. 두 정수 a와 b가 매개변수로 주어질 때, a/b가 유한소수이면 1을, 무한소수라면 2를 return하도록 solution 함수를 완성해주세요. 제한 사항 a, b는 정수 0 Int { // 유클리드 호제법 return b == 0 ? a : gcd(..

알고리즘/문제 2023.05.09

[프로그래머스] Lv. 0 - 외계어 사전

프로그래머스 Lv. 0 - 외계어 사전 바로가기 https://school.programmers.co.kr/learn/courses/30/lessons/120869 문제 문제 설명 PROGRAMMERS-962 행성에 불시착한 우주비행사 머쓱이는 외계행성의 언어를 공부하려고 합니다. 알파벳이 담긴 배열 spell과 외계어 사전 dic이 매개변수로 주어집니다. spell에 담긴 알파벳을 한번씩만 모두 사용한 단어가 dic에 존재한다면 1, 존재하지 않는다면 2를 return하도록 solution 함수를 완성해주세요. 제한 사항 spell과 dic의 원소는 알파벳 소문자로만 이루어져있습니다. 2 ≤ spell의 크기 ≤ 10 spell의 원소의 길이는 1입니다. 1 ≤ dic의 크기 ≤ 10 1 ≤ dic의 ..

알고리즘/문제 2023.05.09