본문 바로가기

728x90

Job Wanted/코테 - 프로그래머스

(46)
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 공 던지기 코드를 짧게 써서 답을 맞추면 짜릿하다. 원형 어레이처럼 보이지만, 그냥 선형 배열을 여러개 놓고, 인덱스를 쉽게 놓았더니 한번에 정답이 되었다. 정답률도 77% 이어서 점수 +2 개꿀 내가 맞힌 정답:: def solution(numbers, k): answer = 0 number = numbers * k answer = number[2*(k-1)] return answer https://school.programmers.co.kr/learn/courses/30/lessons/120843 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 암호 해독 내가 맞힌 정답:: def solution(cipher, code): answer = '' for i in range(1,(int(len(cipher)/code)+1)): answer += cipher[(code*i)-1] return answer https://school.programmers.co.kr/learn/courses/30/lessons/120892 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 제곱수 판별하기 처음에는, 작은 수만 예외로 처리하고, 범위를 주어진 수의 절반까지의 범위로 했었는데, 이게 잘못된 접근이었다. 주어진 문제의 숫자의 범위가, 1,000,000이었기 때문에 자칫하면 루프가 50만번 돌 수도 있었다. 근데, 매개변수의 제한조건이 백만이니까, 최대 제곱수가 1000일거라는 생각이 들어 루프의 범위를 줄이고 다시 돌려봤더니 금새 문제가 풀렸다. 내가 맞힌 정답:: def solution(n): answer = 0 for i in range(1,1001): if n == i*i: answer = 1 break else: answer = 2 return answer 잘못 작성한 답 (1, 2) def root(n): rootN = int(n/2) for i in range(2,rootN): if..
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 피자 나눠 먹기 (3) 처음에 어떻게 틀렸는지도 모르겠다. 디게 쉬운 문젠데, 처음에 풀 떄는 왜 틀렸지. 내가 맞힌 정답:: def solution(slice, n): answer = 0 if n % slice == 0: answer = n/slice else : answer = int(n/slice) + 1 return answer https://school.programmers.co.kr/learn/courses/30/lessons/120816 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 최댓값 만들기 (2) https://school.programmers.co.kr/learn/courses/30/lessons/120862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr itertools combination에 대해서 다시한번 확인해보는 문제였다. 의외로 정답율 높은 것 치고는, +4점이나 주었다. 내가 맞힌 정답:: from itertools import combinations def solution(numbers): answer = 0 max = numbers[0] * numbers[1] combin = list(combinations(numbers,2)) ..
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 양꼬치 https://school.programmers.co.kr/learn/courses/30/lessons/120830 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 서비스라는 변수를 따로 두면 쉽게 해결할 수 있는 문제였는데, 이거를 해결 못하고 if 문으로만 해결하려고 했다가 한참이나 걸려서 풀게 되었다. 주석 안에 있는 부분은 내가 처음에 잘못 생각해서 한참을 해맸던 코드이다. 내가 맞힌 정답:: def solution(n, k): answer = 0 service = int(n/10) if k >= service: k -= service elif k<..
[프로그래머스] 월간 코드 챌린지 시즌1 > 3진법 뒤집기 월간 코드 챌린지 시즌1 > 3진법 뒤집기 https://school.programmers.co.kr/learn/courses/30/lessons/68935 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음에 틀린 이유 :: 사실 아직도 잘 모르겠다 다음에 조심해야할 점 :: 여러 케이스 가운데 꼭 한 두개씩 예외 케이스를 생각하지 못해서 정답으로 인정받지 못하는 경우들이 있다. 항상 예외 케이스를 잘 생각해두자. 정답 코드 def solution(n): answer = 0 temp = '' while n > 0: n,r = divmod(n,3) tem..
[프로그래머스] 코딩테스트 연습 > 연습문제 > 문자열 다루기 기본 다음에 조심해야할 점 :: 1. 문제를 잘 읽고 문제를 풀자 2. or 연산자와 and 연산자 헷갈리지 않기. def solution(s): answer = True for _ in s: if _.isdigit() == False: answer = False if len(s)!=4 and len(s)!=6: answer = False print(len(s)) return answer
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 소인수분해 무려 7점이나 받은 문제다. 현재 정답률 76% 풀이 과정 :: 우선 소수 인지를 판단할 수 있는 함수를 하나 정의해준다. 그리고 for문을 통해서 인수 인지를 찾아줌과 동시에 소수인지를 판별하여, answer 라는 리스트에 답을 하나씩 추가해준다. def isprime(n): count = 0 for i in range(1,n+1): if n%i == 0: count += 1 if count == 2: return True def solution(n): answer = [] for i in range(1, n+1): if n%i==0 and isprime(i) == True: answer.append(i) return answer
[프로그래머스] 코딩테스트 연습 > 연습문제 > 콜라츠 추측 다음에 조심해야할 점 :: 항상 while 문을 쓰는 조건을 고르는 것은 헷갈린다. while 문의 조건을 고를 때 신중하게, 그리고 명확하게 하자. def solution(num): answer = 0 while num > 1: if num%2 == 0: num /= 2 else : num = num*3 + 1 answer += 1 if answer >= 500: answer = -1 return answer

728x90
반응형