일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 프로그래머스 #sql #mysql #코딩테스트
- 백준 #이거다시풀기
- 프로그래머스 #NULL 처리하기
- 카카오 코테
- 프로그래머스 #python #코딩테스트 #코테공부 #알고리즘 #dict
- 백준 #백준알고리즘 #알고리즘 #코딩테스트 #코딩테스트준비 #코테준비 #백준2110 #python #문제풀이
- 프로그래머스 #c++ #코딩테스트
- 백준 #백준2217 #백준로프 #python
- 카카오 #프로그래머스 #python #코딩테스트 #오픈채팅방
- 동
- 그리디알고리즘 #그리디 #백준 #우선순위큐 #최소힙 #최대힙 #알고리즘 #코딩테스트 #python
- 프로그래머스 #python #2021카카오 #카카오코테 #카카오인턴쉽
- 프로그래머스 #네트워크 #c++ #코딩테스트 #코테 #코테준비 #dfs
- Today
- Total
목록알고리즘 문제 풀이/프로그래머스 (83)
say repository
https://programmers.co.kr/learn/courses/30/lessons/17681 출처 : 프로그래머스 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr def solution(n, arr1, arr2): answer = [] tmp1 = [] tmp2 = [] # arr1 수를 이진수로 바꾸기 for i in range(len(arr1)): tmp = '' while True: if arr1[i]==0: while len(tmp)!=n: tmp+='0' tmp1.append(tmp[..
https://programmers.co.kr/learn/courses/30/lessons/12940 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 출처 : 프로그래머스 def gcd(a,b): if a 즉, 두 수의 곱에 두 수의 최대공약수를 곱한 값과 같다.
https://programmers.co.kr/learn/courses/30/lessons/12926# 출처 : 프로그래머스 코딩테스트 연습 - 시저 암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀 programmers.co.kr def solution(s, n): s = list(s) for i in range(len(s)): if s[i].isupper(): # 대문자면 s[i] = chr( (ord(s[i])-ord('A')+n) % 26 + ord('A')) elif s[i].islower() : # 소문자면 s[i] = chr(..
https://programmers.co.kr/learn/courses/30/lessons/12930 출처 : 프로그래머스 코딩테스트 연습 - 이상한 문자 만들기 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 programmers.co.kr def solution(s): answer = '' i = 0 #각 단어 인덱스 for ch in s: if ch == ' ': # 빈칸 체크 answer += ch i = 0 # 빈칸이면 계속 단어 인덱스 0 else: # 빈칸 아니면 if i%2 == 0: answer += ch.upper() else: answer += c..
https://programmers.co.kr/learn/courses/30/lessons/12950 출처 : 프로그래머스 코딩테스트 연습 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요 programmers.co.kr def solution(arr1, arr2): for i in range(len(arr1)): for j in range(len(arr1[i])): arr1[i][j] += arr2[i][j] return arr1 풀이 1 배열을 탐색하며 알맞는 인덱스를 더해줬다. def solution(arr1, arr2):..
https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr def solution(strings, n): # 인덱스 n의 문자가 같으면 사전순 strings = sorted(strings, key = lambda x:(x[n],x)) return strings python의 sorted에서 key는 정말 유용하게 쓰이고 있다.
https://programmers.co.kr/learn/courses/30/lessons/12906 출처 : 프로그래머스 코딩테스트 연습 - 같은 숫자는 싫어 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 programmers.co.kr def solution(arr): answer = [arr[0]] for i in range(len(arr)-1): if arr[i] != arr[i+1]: answer.append(arr[i+1]) return answer 풀이 1 배열의 첫 번 째 값을 넣고 배열의 앞부터 비교한다. 앞과 뒤 숫자가 다를 때만 ..