https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾아서 둘을 제거한뒤 앞뒤로 문자열을 이어붙인다.짝지어 제거할 수 있으면 1 아니면 0을 리턴한다. 2. 문제풀이 포인트1. 문자열 길이가 1,000,000 이하의 자연수다 시간복잡도를 생각해야한다.2. 스택으로 푸는 것이 효율적이다. 3. 첫번째 풀이(실패사례)def solution(s): while len(s) > 1: s ..
https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제 특정 튜플을 표현하는 집합이 담긴 문자열 s가 매개변수로 주어질 때, s가 표현하는 튜플을 배열에 담아 return 하도록 solution 함수를 완성해주세요. 2. 문제풀이 포인트1. { } 또한 문자열인데 이 안에서 있는 숫자 집합들을 어떻게 추출할 것인가2. 숫자 집합의 길이순대로 정렬해야한다.3. s의 길이는 5 이상 1,000,000 이하 이기 때문에, 시간복잡도를 생각해야한다. ..
https://school.programmers.co.kr/learn/courses/30/lessons/12930 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제단어의 짝수번째 알파벳은 대문자로 홀수 번째 알파벳은 소문자로 바꾼 문자열을 retrun하라 2. 코드def solution(s): answer = '' s = list(s) # 문자를 배열로 만든다. cnt = 0 #문자를 카운트하기 위해 초기화한다. for i in range(len(s)): if s[i] == ' ': ..
https://school.programmers.co.kr/learn/courses/30/lessons/12926 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제문자와 숫자를 입력받아 숫자만큼 문자를 일정한 거리만큼 밀어 다른 알파벳으로 만든다.2.문제풀이포인트1. A와 a의 아스키 코드는 다르다. 대문자와 소문자를 구분해야한다.2. 주어진 숫자만큼 밀면 알파벳 범위를 벗어나게된다. 순환구조를 만들어야한다.3. 문자를 숫자로 바꿀때 ord()를 쓰고 숫자를 문자로 바꿀때 chr()함수를 쓴다.4. 문자를 바로 바꿀수없으니 배..
https://school.programmers.co.kr/learn/courses/30/lessons/12949 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제두 행렬을 받아서 곱한 결과를 반환하는 함수를 만들어라. 2. 문제풀이흐름행렬의 곱셈을 모르면 못푸는 문제다.1. arr1과 arr2의 곱셈의 결과 크기만큼의 2차원 배열을 초기화한다.2. arr1의 행길이 만큼 순회를 돈다. (행과 열을 곱하기 때문이다.)3. arr2의 열길이 만큼 순회를 돈다. 4. arr1의 열길이 만큼 순회를 돈다. def solut..
https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 5*5행렬에 자리배치도가 있다. 문제 기준에 따라 거리두기를 지킨 대기실과 지키지 못한 대기실을 배열로 return하면 된다. 2. 문제 풀이 포인트 1. 전달받은 place를 순회해서 1차원 배열안에 있는 문자열을 2차원 배열화 해야한다. 2차원 배열이 주어지고 그 안에 있는 1차원 배열이 각 대기실 이다. 여기서 부터 난관이었다. 문자열 인덱스가 필요하고 위, 아래를 체크하기 위해서..
https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 정수 n이 매개변수로 주어진다. 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 숫자를 순차적으로 채운다. 이 배열을 1차원 배열로 return하는 solution함수를 완성하라. 2. 문제 풀이 흐름 1. 1부터 n까지 순차적으로 리스트 길이가 늘어나는 matrix를 만든다. (그림상으로는 n*n이지만 리스트 컴프리헨션으로 [[0],[0, 0],[0, 0, 0]]을 만들 수 ..
https://school.programmers.co.kr/learn/courses/30/lessons/77485 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 rows * columns의 행렬이 주어지고 (x1, y1, x2, y2) 값이 주어진다. x1행 y1열부터 x2행 y2열까지 영역에 해당하는 직사각형 테두리 숫자들을 한칸씩 시계 방향으로 회전한다. 회전에 의해 위치가 바뀐 숫자들 중 최솟값을 배열로 return한다. 2. 문제 풀이 흐름 1. rows와 columns에 맞춰 행렬을 만든다. 2. rotate 함수를 만든다. 한 라인씩..