본문 바로가기

전체 글

(346)
[프로그래머스] 햄버거 만들기 풀이 / JavaScript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 햄버거 가게에서 일을 하는 상수는 햄버거를 포장하는 일을 합니다. 함께 일을 하는 다른 직원들이 햄버거에 들어갈 재료를 조리해 주면 조리된 순서대로 상수의 앞에 아래서부터 위로 쌓이게 되고, 상수는 순서에 맞게 쌓여서 완성된 햄버거를 따로 옮겨 포장을 하게 됩니다. 상수가 일하는 가게는 정해진 순서(아래서부터, 빵 – 야채 – 고기 - 빵)로 쌓인 햄버거만 포장을 합니다. 상수는 손이 굉장히 빠르기 때문에 상수가 포장하는 동안 속 재료가 추가적으로 들어오는 일은 없으며, 재료의 높이는 무시하여 재료..
[프로그래머스] 둘만의 암호 풀이 / JavaScript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 두 문자열 s와 skip, 그리고 자연수 index가 주어질 때, 다음 규칙에 따라 문자열을 만들려 합니다. 암호의 규칙은 다음과 같습니다. 문자열 s의 각 알파벳을 index만큼 뒤의 알파벳으로 바꿔줍니다. index만큼의 뒤의 알파벳이 z를 넘어갈 경우 다시 a로 돌아갑니다. skip에 있는 알파벳은 제외하고 건너뜁니다. 예를 들어 s = "aukks", skip = "wbqd", index = 5일 때, a에서 5만큼 뒤에 있는 알파벳은 f지만 [b, c, d, e, f]에서 'b'와 'd'는..
[프로그래머스] 대충 만든 자판 풀이 / JavaScript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다. 예를 들어, 1번 키에 "A", "B", "C" 순서대로 문자가 할당되어 있다면 1번 키를 한 번 누르면 "A", 두 번 누르면 "B", 세 번 누르면 "C"가 되는 식입니다. 같은 규칙을 적용해 아무렇게나 만든 휴대폰 자판이 있습니다. 이 휴대폰 자판은 키의 개수가 1개부터 최대 100개까지 있..
2022년 정보처리기사 2회 실기 합격 및 문제 후기 2022 정보처리기사 2회 실기 합격 및 문제 후기 정보처리기사 2회 실기에 합격하여 개인적으로 공부했던 방법과 후기를 올립니다. 이번 합격률이 16%로 꽤 낮게 나왔는데 아무래도 비전공 유입이 항상 많고 따기 쉽다는 예전의 이미지를 벗어나려고 점점 전문화되고 어려워지는 것은 맞는 것 같습니다. 저는 복수전공을 했지만 전공자분들은 대부분 좋은 결과 얻으셨을거라 생각합니다. 실기 시험은 2주, 하루 약 1~2시간 정도로 준비했습니다. 필기를 4월에 봤으니 내용을 일부 까먹어버린 상태이기도 하고 실기는 출제 바운더리가 훨씬 넓어서 처음부터 내용을 다시 공부했습니다. 정처기의 시험 유형은 제 기준으로 크게 3가지입니다. [ 프로그래밍 + SQL + 소프트웨어 공학 이론 ] 프로그래밍 Part. 먼저, 코딩문제..
[구현] 뱀 풀이 (백준 3190 / 삼성전자 SW 역량테스트) 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 내 풀이 from collections import deque n = int(input()) arr = [[0] * n for _ in range(n)] k = int(input()) for _ in range(k): x, y = map(int, input().split()) arr[x - 1][y - 1] = 1 l = int(input()) action = deque() for _ in range(l): x, c = input().split() action.appe..
[KAKAO RECRUITMENT] 문자열 압축 풀이 / Python 문제 출처 https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 "aabbaccc"의 경우 ..
[구현] 문자열 재정렬 풀이 문자열 재정렬 [문제] 알파벳 대문자와 숫자 (0~9)로만 구성된 문자열이 입력으로 주어집니다. 이때 모든 알파벳을 오름차순으로 정렬하여 이어서 출력한 뒤에, 그 뒤에 모든 숫자를 더한 값을 이어서 출력합니다. 예를 들어 K1KA5CB7이 입력으로 들어오면, ABCKK13을 출력합니다. [입력] K1KA5CB7 [출력] ABCKK13 [입력] FDSARQWER13579 [출력] ADEFQRRSW25 내 풀이 arr = list(input()) arr.sort() idx, digit = 0, 0 if any(map(str.isdigit, arr)): for i in arr: if i.isdigit(): idx += 1 digit += int(i) arr = arr[idx:] arr.append(digit)..
[백준 18406] 럭키 스트레이트 풀이 / Python 18406번: 럭키 스트레이트 첫째 줄에 점수 N이 정수로 주어진다. (10 ≤ N ≤ 99,999,999) 단, 점수 N의 자릿수는 항상 짝수 형태로만 주어진다. www.acmicpc.net 개인 풀이 arr = list(map(int, input())) print("LUCKY") if sum(arr[:len(arr) // 2]) == sum(arr[len(arr) // 2:]) else print("READY") array를 반으로 인덱싱하여 각 배열의 원소를 합한 결과를 비교해 동일한 경우 "LUCKY"를, 그렇지 않은 경우 "READY"를 출력하면 정답 판정을 받을 수 있다.