본문 바로가기

알고리즘 공부/프로그래머스 > Python3

(44)
[프로그래머스] JadenCase 문자열 만들기 https://programmers.co.kr/learn/courses/30/lessons/12951 코딩테스트 연습 - JadenCase 문자열 만들기 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 programmers.co.kr [오답] → '코드실행' 100%, '제출 후 채점하기' 43.8% s를 공백 기준으로 나누어서 리스트안에 넣고, 문자열 하나하나 꺼내서 capitalize()함수를 이용해 첫글자를 대문자로 만들어주고 공백과 함께 answer에 넣어준다. 코드가 맞는 것 같은데 왜 틀렸다는지 모르겠어서 네이버에 검색해보..
[프로그래머스] 전화번호 목록 https://programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr [오답] → 정확성 100%, 효율성 0% 효율성 0%로 시간초과된 코드,, [정답1] 근데 혹시나 return을 바로 True, False로 해줘서 효율성이 100%로 나왔나 싶어 위에서 효율성이 0%나왔던 코드를 answer만 없애고 return을 바로 True, False로 해주어서 코드를 제출해본 결과,,, [정답2] 정답이었다,, 고로 위의 코드에는..
[프로그래머스] H-Index https://programmers.co.kr/learn/courses/30/lessons/42747 코딩테스트 연습 - H-Index H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표 programmers.co.kr 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다. → h편 이상과 h편 이하 [정답] 1. 논문별 인용 횟수를 알아보기 위해 for문을 0~len(citations)만큼 돈다. (0회~(논문의 개수)회) 2. 인용된 논..
[프로그래머스] 영어 끝말잇기 https://programmers.co.kr/learn/courses/30/lessons/12981코딩테스트 연습 - 영어 끝말잇기3 [tank, kick, know, wheel, land, dream, mother, robot, tank] [3,3] 5 [hello, observe, effect, take, either, recognize, encourage, ensure, establish, hang, gather, refer, reference, estimate, executive] [0,0]programmers.co.kr ⓐ 한 글자인 단어는 인정되지 않습니다.ⓑ 마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작합니다.ⓒ 이전에 등장했던 단어는 사용할 수 없습니다.ⓓ 앞사람이 말한 단어의 ..
[프로그래머스] 체육복 https://programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr [오답1] → '코드 실행' 통과. '제출 후 채점하기' 정답률 33.3% [오답2] → '코드 실행' 통과. '제출 후 채점하기' 정답률 75.0% ※ 이 때 발견한 제한사항! (역시 문제를 잘 읽어야 해,,,) 여벌 체육복을 가져온 학생이 체육복을 도난당했을 수 있습니다. 이때 이 학생은 체육복을 하나만 도난당했다고 가정하며, 남은 체육복이 하나이기에 다른 학..
[프로그래머스] 문자열 내 마음대로 정렬하기 https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1 programmers.co.kr [정답1] 1. strings을 sort한다. 2. strings에서 매개변수 x를 전달받아 x[n]를 리턴해서 key로 받아 이를 기준으로 sort한다. 3. strings를 answer에 넣어준다. 4. answer를 return한다. [정답2] 1. strings에서 매개변수 x를 전달받아 x[..
[프로그래머스] 모의고사 https://programmers.co.kr/learn/courses/30/lessons/42840?language=python3 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr [정답] 1. 학생1,2,3의 찍는 패턴을 찾고, 그들의 답안과 실제 정답인 answers와 비교하기 위해서 학생1,2,3의 답안의 길이를 맞춰주어야 한다. 2. st1, st2, st3의 찍는 패턴에 answers의 길이를 그 패턴의 길이로 나누고 1을 더한다 ( 만약 answers의 길이가 12라면, st1의 길이는 15/ st..
[프로그래머스] 소수 찾기 https://programmers.co.kr/learn/courses/30/lessons/12921 코딩테스트 연습 - 소수 찾기 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 programmers.co.kr [정답] 1. 2~n까지 for문을 돈다. 2. for문을 2~i의 제곱근까지 i를 나누면서 돈다. 만약 i로 나누었을 때 나머지가 0이면 isPrime=False을 해주고 다음 for문을 돈다. 3. for문을 다 돌고서도 isPrime이 True라면 answer에 1을 더해준다. 4. answer를 return한다. math모듈 ma..