본문 바로가기
728x90

Problem Solving103

[Swift] 프로그래머스 이진 변환 반복하기(lv. 2) [Swift] 프로그래머스 이진 변환 반복하기(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 반복의 횟수는 모르겠지만, 주어진 조건 1, 2 대로 계속 숫자를 깎아서 결국 "1"이 될 때 까지 내부의 반복문을 몇 번을 거쳤는지만 파악하면 된다. while문을 활용하여 없어진 0의 개수를 count 하여 누적합 처리하고, 필터를 사용하여 "1"로만 구성되게 한 다음, 그 문자열의 길이를 다시 이진수로 변환하는 .. 2023. 3. 2.
[Swift] 프로그래머스 올바른 괄호(lv. 2) [Swift] 프로그래머스 올바른 괄호(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 lv. 2 초반이라 lv. 1보다 쉬운 레벨의 것이 나오기도 한다. 스택의 개념을 잘 생각하면 풀 수 있는 문제이다. 스택으로 해서 직접 괄호를 넣었다 뺐다가 할 수도 있지만, count 개념을 넣어서 할 수도 있다. "(" 가 들어오면 +1을 하고, ")"가 들어오면 -1를 하는 것. 그런데 전체적으로 합쳐지면 ")("도 .. 2023. 3. 1.
[Swift] 프로그래머스 최솟값 만들기(lv. 2) [Swift] 프로그래머스 최솟값 만들기(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 열심히 만들면 된다. 한쪽은 오름차순으로 정렬하고, 한쪽은 내림차순으로 정렬해서 차례로 곱한 값을 누적하여 합하면 된다. 나는 주어진 A를 오름차순 정렬하고, B를 내림차순 정렬했다. innerA의 값을 직접 바꾸는 방법으로 메모리를 더 쓰는 것을 방지해보았다. enumarated()를 사용하여 인덱스와 원소를 함께 불러서.. 2023. 2. 28.
[Swift] 프로그래머스 JadenCase 문자열 만들기(lv. 2) [Swift] 프로그래머스 JadenCase 문자열 만들기(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 첫 문자만 대문자이고, 나머지는 소문자인 문자열을 만들면 된다. 숫자가 맨 처음 문자이면 숫자는 그대로 쓰면 된다. 문자열 처리하는 문제이기 때문에, components를 잘 활용하고, 첫 문자가 문자인지 숫자인지 구별해서 잘 처리해주면 된다. 만약 첫문자가 숫자라면, 단순히 lowercased()로만 해.. 2023. 2. 27.
[Swift] 프로그래머스 햄버거 만들기(lv. 1) [Swift] 프로그래머스 햄버거 만들기(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 무엇인가 쌓여가는 모습이기 때문에 스택을 활용하여 푸는 방법을 택했다. 스택에 4개 이상의 원소가 들어왔을 때, 순서대로 1, 2, 3, 1 인지를 보고, 만약 맞다면, 그 순서를 제외한 스택만을 남겨놓고 answer에 누적합을 더하게 된다. 모든 반복을 거치면 답변이 구해져 있을 것이다. 3. 코드 import Foun.. 2023. 2. 25.
[Swift] 프로그래머스 개인정보 수집 유효기간(lv. 1) [Swift] 프로그래머스 개인정보 수집 유효기간(lv. 1) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 Swift 기준으로 가장 최근에 나온 lv. 1 문제이다. 2023 카카오 블라인드 채용 문제로 등장한 문제이다. 날짜 처리가 관건일 줄 알았는데, 그건 아니었고, 모든 달이 28일로 되어 있다고 가정을 하는 바람에 문제가 좀 더 쉬워졌다. 문자열을 마침표를 기준으로 분해하고, 오늘을 기준으로 문서 작성일로부터 .. 2023. 2. 24.
728x90