https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr 프로그래머스에서 문자열 정렬을 하는 문제를 풀었다. n번째 글자를 기준으로 문자열을 정렬하는 문제로 n번째 글자가 같을 땐 사전 순서 대로 정렬을 해야하는 문제이다. 특정 문자열로 정렬을 어떻게 해야할지 몰라서 검색을 해 봤고 문자열 정렬 중 함수를 인자로 받는 key를 사용하여 원하는 대로 정..
https://app.codility.com/programmers/lessons/3-time_complexity/ 3. Time Complexity lesson - Learn to Code - Codility Count minimal number of jumps from position X to Y. app.codility.com 코딜리티에서 lesson 3 시간 복잡도 문제를 풀었다. 이 문제가 이해하는데 가장 시간을 많이 쓴 것 같다.. 영어로 된 것도 있지만 이 문제를 효율적으로 풀어야 하는 나한테 요구하는게 뭔지 파악을 하기가 힘들었다. 문제 그대로 해석하면 p에 따라 리스트 A가 2개로 나뉘어진다. 첫번째 구간은 A[:P]이며 두번째 구간은 A[P:N-1]이다. 이 두 구간의 총 합의 차이를 구..
https://app.codility.com/programmers/lessons/3-time_complexity/ 3. Time Complexity lesson - Learn to Code - Codility Count minimal number of jumps from position X to Y. app.codility.com 코딜리티 lesson 3 시간 복잡도에 관련된 문제를 풀었다. 리스트 A의 원소는 1부터 N+1까지의 수로 구성되어 있는데 이 중 하나의 숫자가 누락되어 있으며 이때 누락된 숫자를 찾는 문제이다. 첫번째 시도 - 실패 def solution(A): answer = '' A = sorted(A) for i in range(len(A) -1) : if A[i+1] - A[i] !=..
https://app.codility.com/programmers/lessons/3-time_complexity/ 3. Time Complexity lesson - Learn to Code - Codility Count minimal number of jumps from position X to Y. app.codility.com 코딜리티 lesson 3 시간 복잡도에 관련된 문제를 풀었다. x,y,d가 주어지고 개구리의 위치가 y와 같거나 클 때까지 x에 d를 몇번 더하면 되는지 푸는 문제이다. 시간 복잡도 문제이다 보니 확실히 효율성을 따져가면서 풀어야했다. lesson3에 있는 세 문제 모두 생각없이 문제흐름대로 풀었다가 전부 시간 초과를 마주했었다 ㅎ 첫번째 풀이 - 실패 def solution(..
https://app.codility.com/programmers/lessons/2-arrays/ 2. Arrays lesson - Learn to Code - Codility Rotate an array to the right by a given number of steps. app.codility.com 코딜리티에서 lesson2에 있는 두 문제를 어제 오늘 풀었다. easy라고 되어 있는데 왜 난 쉽게 풀지 못했는가... CyclicRotation 주어진 배열 A의 원소들이 K만큼 배열 A안에서 회전을 하는 문제이다. 영어로 되어 있기 때문에 제한 사항을 잘 봐야했는데 나는 제한사항을 제대로 보지 않아서 처음엔 100%가 나오지 않았다. CyclicRotation 정답 코드 def solution(..
https://app.codility.com/programmers/lessons/1-iterations/ 1. Iterations lesson - Learn to Code - Codility Find longest sequence of zeros in binary representation of an integer. app.codility.com 곧 있을 코테가 코딜리티에서 진행된다고 하여 플랫폼에 익숙해 지기 위해 코딜리티에서 문제를 풀기 시작했다. 영어로 되어 있는 사이트라 문제도 영어라서 차근차근 읽어보고 제대로 코드를 짜는 것이 가장 중요할 것 같았다. lesson 1부터 코테 전까지 최대한 많이 풀어보려고 노력해야할 것 같다. 코딜리티의 lesson 1 문제는 아래와 같다. 10진수를 2진수로 ..
https://programmers.co.kr/learn/courses/30/lessons/12917 코딩테스트 연습 - 문자열 내림차순으로 배치하기 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 programmers.co.kr 프로그래머스에서 간단한 문제를 하나 풀었는데 생각보다 시간을 많이 써서 버벅거렸던 부분을 기록해두면 좋을 것 같아 쉬운 문제지만 포스팅하게 되었다. 첫번째 시도(실패) - 문법 파괴왕 코린이... def solution(s): answer = '' string = sorted(s) for s in string : answer += s..
코테 준비를 하면서 문자열 체크하는 함수가 유용하게 쓰이는 것 같아 필요할 때 볼 수 있게 간단히 정리해 놓은 게시글이 있으면 좋을 것 같았다. isalpha() 문자열이 영어 또는 한글로만 이루어져 있는지 확인하고 True, False로 반환하는 함수이다. 공백, 특수문자, 숫자가 포함되어 있으면 False를 반환한다. 한글도 인식하기 때문에 영어, 한글로만 되어있으면 True를 반환한다. isalnum() 문자열이 영어, 한글, 숫자로만 되어 있는지 확인 후 True, Fasle를 반환하는 함수이다. 공백문자, 특수 문자가 포함되어 있으면 False를 반환한다. 영어, 한글, 숫자로만 이루어져 있다면 True를 반환한다. isnumeric() / isdigit() / isdeciaml() 3개 함수 ..
https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 프로그래머스에서 카카오 기출 문제인 '숫자 문자열과 영단어'를 풀었다. 처음엔 10가지 경우로 나눠서 if문을 만들어야 하나 생각했는데 며칠 전에 사용한 replace가 생각나서 사용해 보고자 했다. 또 딕셔너리에서 items()를 사용하면 키와 값을 모두 가져올 수 있으니 for문으로 해결할 수 있을 것 같았다. 첫번째 시도 ### 틀린 코드 ###..
https://programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr 오늘도 쉬운 문제 하나 풀고 카카오 기출 레벨 1 문제를 하나 더 풀었다. '신규 아이디 추천' 문제로 문제에 나온 단계별로 차근차근 풀면 되는 문제이다. 1단계에서 7단계로 차근차근 풀면 되는 문제였고 나는 3단계에서 조금 애를 먹었다. 처음부터 for문으로 연속해서 ..이 나오는 경우를 걸러내려고 했으나 생각한대로 잘 되지 않았다. 찾아보니 repla..