목록코테준비/프로그래머스 (11)
끄적끄적
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/60057?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문자열 문자열 길이의 반정도까지 돌면서 1개, 2개, 3개... 씩 쪼갠다. 쪼개고 나서 나온 문자열 길이를 리스트에 추가한다. 그 중 가장 작은 값을 찾는다. +) 문자열의 길이가 1일 때는 예외처리 해줘야 함.
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12952?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 백트래킹 겹치지 않으려면 한줄당 하나씩밖에 못오기 때문에, queen을 1차원 리스트로 선언 queen[0]=1이면 (0,1)에 퀸이 놓여져있다는 뜻 같은 열이나 대각선에 위치해 있는게 아니라면 이어서 탐색 * 가로 - 가로 와 세로 - 세로 의 절댓값이 같으면 대각선에 위치해 있다는 것
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr n번째 문자를 문자열 맨 앞에 붙이고 정렬한다. (n번째 문자를 기준으로 정렬하고, n번째 문자가 같으면 사전순으로 정렬한다고 했기 때문)
출처 : https://programmers.co.kr/learn/courses/30/lessons/17680 맨 앞 원소로부터 i번째에 있는 원소 삭제 toupper, tolower 문자를 대문자, 소문자로 바꿔주는 함수. char형에만 적용되므로(string으로는 안됨) cities 문자열에 각 문자로 접근하여 각각 적용시켜줘야 한다. 2. python deque를 이용해서 풀었다. 도시이름은 대소문자 구분을 따로 하지 않는다고 했으므로 다 소문자로 바꾸어서 넣어준다. 도시 이름이 dq에 있으면 +1을, 없으면 +5를 해준다. 또한 도시 이름이 dq에 있으면 해당 도시를 제거하고, dq가 꽉찼을 경우 도시 이름이 없다면 맨 앞의 도시를 제거해준 후 동일하게 현재 도시 이름을 dq에 추가해줌.
출처 : https://programmers.co.kr/learn/courses/30/lessons/17681?language=cpp 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 주어진 숫자를 이진법으로 바꾸는 함수를 이용해서 푸는 방법을 생각하고 있었는데, 비트연산자를 사용하여 간단히 해결할 수 있는 문제였다. int num = arr1[i] | arr2[i] OR 연산 의미 예를 들어 arr1[i]가 10001이고 arr2[i]가 10101이라면 num은 10101이 된다. 2진법에서만 사용할 ..

출처 : https://programmers.co.kr/learn/courses/30/lessons/17682?language=cpp 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 주의할 점 이 조건에 따라 *이 나올 시 해당 점수와 바로 전 점수만 2배가 되어야하니 바로 전 점수를 저장할 prev변수와 해당 점수를 저장하는 cur 변수를 만들어 관리. 숫자는 0~10이 나올 수 있으므로 한자리 수가 아닐 수 있다. 또한, 10이 나올 경우, *, #이 나올 경우는 이미 전 문자에서 완료했으므로 i++을 해줌으로써 다음 문자로 넘어간다.

문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/42578?language=python3 코딩테스트 연습 - 위장 programmers.co.kr - 문제 풀이 - 여러 종류의 옷이 있고 각 종류별로 1개 이하를 입을 수 있다면 몇 가지의 옷이 가능하냐는 문제이다. 약간 이상하긴 하지만, 위 예제에 따르면 yellow_hat만 입은 것도 옷을 입은 것으로 친다고 하는 것을 보아, 여러 종류 중 하나만이라도 입은 상태도 포함하여 모든 경우의 수를 계산하는 문제이다. 위의 예제 #1을 단순화하면 아래와 같은 그림이 나온다. headgear는 총 2개 있으니, 스파이에게는 총 3가지의 경우의 수가 있다. 1번을 입는다. 2번을 입는다. headgear를..
출처 : https://programmers.co.kr/learn/courses/30/lessons/59044 코딩테스트 연습 - 오랜 기간 보호한 동물(1) ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr ANIMAL_INS에는 존재하는데, ANIMAL_OUTS에는 존재하지 않는 동물들 중 오래된 순으로 3마리만 출력하는 문제이다. ANIMAL_INS를 기준으로 JOIN해야 하므로 LEFT OUTER JOIN을 사용해야 한다. 3마리만..