목록Computer Knowledge/코테 대비 오답노트 (34)
Data house
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 def solution(array, n): min_ = 99999 result = -1 array.sort() for i in array: if abs(i-n) < min_: min_ = abs(n-i) result = i return result 주어진 배열 array에 수들이 들어있고 이 중 n과 가장 가까운 숫자를 골라야한다. 단, 가장 가까운 숫자들이 많을 경우 그 중 가..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # 말 그대로 제곱수인지 판별해야함 나의 풀이 def solution(n): return 1 if (n**(0.5)).is_integer() else 2 n**(0.5)는 루트 n 을 말하는데, 이게 만약 정수라면 제곱수라고 볼 수 있다. 즉 1을 반환. 제곱수는 루트를 해도 정수인데 만약 그게 아니라면 제곱수라고 볼 수 없다. 즉 2를 반환 인상적인 풀이 def solution(n): i..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120812 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 def solution(array): arr = [0]*1000 for i in array: arr[i] += 1 n = arr.count(max(arr)) if n >= 2: return -1 elif n == 1: return arr.index(max(arr)) 나는 각 숫자가 몇번 나왔는지 배열 arr를 생성해서 기록했다 n은 가장 많이 나온 원소의 갯수를 말한다. n이 2..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 분자, 분모를 곱해서 최대 공약수로 나누면 기약분수로 나타낼 수 있다. 이를 코드로 구현하면? 풀이 방법 1. 단순 코딩 def solution(numer1, denom1, numer2, denom2): numer = numer1*denom2 + numer2*denom1 denom = denom1 * denom2 d = denom for i in range(d, 1, -1): if nume..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181836/solution_groups?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이중 반복문 사용해야하는 문제이다. 나의 풀이 def solution(picture, k): result = [] re = [] for i in picture: arr = '' for j in i: arr+=j*k result.append(arr) for i in result: for j in range(k): re.append(i..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 def solution(myStr): result = [] re =[] st = '' for i in myStr: if i in ['a','b','c']: result.append(st) st = '' else: st += i result.append(st) for i in result: if i != '': re.append(i) return re or ["EMPTY"] 더러운..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181857 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 2의 제곱수인지 확인하는 법 2는 비트로 나타냈을 때: 1 = 0001, 2 = 0010, 4 = 0100, 8 = 1000, 16 = 1 0000, 32 = 11 0000, 64 = 100 0000 ... 2의 제곱수 규칙: 왼쪽에 1이고 나머지는 0임 만약 n을 2의 제곱수라고 했을 때, 이전 값인 n-1과 곱하게 되면 맨 왼쪽 수는 0이 된다. 2의 제곱수인지 알고 싶다면 ..
진짜 기본적인 자료구조 문제에 속하는 부분문자열.. 예전에 배웠지만 익숙하게 써지질 않는다..ㅠㅠ 이번에도 문제에 나와서 다시 풀어봤는데 다른 사람들이 푼 정답은 간결하고 beautiful 했다. 나 자신 공부해야한다.. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/181872 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문자열 myStringrhk pat이 주어진다 myString의 부분 문자열 중 pat로 끝나는 가장 긴 부분 문자열을 찾아서 return 나의 풀이 def solutio..