skinOptions.hljs
백준 / 1157번 단어공부 / Python
·
coding test - python/백준
*문제 출처는 백준에 있습니다. 문제 제목: 1157번 단어공부 문제 사이트: https://www.acmicpc.net/problem/1157 나의 풀이 string = input().upper() #문제 조건에서 대소문자 구분X, 모두 대문자 처리 alpha_list = list(set(string)) #count함수를 사용하기위해 중복을 제거한 리스트 생성 cnt_list = [] #count수를 저장하기 위한 리스트 for i in alpha_list: #count의 수를 저장하기 위해 for문 생성 cnt = string.count(i) cnt_list.append(cnt) if cnt_list.count(max(cnt_list)) >1: #cnt_list에서 가장 큰 값의 수가 1개 이상이면 ..
Programmers / 나누어 떨어지는 숫자 배열 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 나누어 떨어지는 숫자 배열 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12910 나의 풀이 def solution(arr, divisor): answer = [] for i in arr: if i % divisor == 0: answer.append(i) if answer == []: return [-1] answer.sort() return answer 모범답안 def solution(arr, divisor): return sorted([n for n in arr if n%divisor == 0]) or [-1] ※ 알아야 할 것 - python은 or 앞이 참일경우 해당 값까지만 , 거짓..
Programmers / 제일 작은 수 제거하기/ Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 제일 작은 수 제거하기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12935 나의 풀이 def solution(arr): arr.remove(min(arr)) if arr == []: arr.append(-1) return arr ※ 알아야 할 것 - min() 함수는 리스트의 최솟값을 반환한다.
Programmers / 자연수 뒤집어 배열로 만들기 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 자연수 뒤집어 배열로 만들기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12932 나의 풀이 def solution(n): return list(map(int,reversed(str(n)))) ※ 알아야 할 것 - str로 받은 함수를 다시 int로 만들어야한다..
Programmers / 문자열 내림차순으로 배치하기 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 문자열 내림차순으로 배치하기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12917 나의 풀이 def solution(s): answer = '' a = sorted(s, reverse = True) answer = ''.join(a) return answer sorted 함수와 join함수를 이용하였다. sorted함수는 리스트 함수를 정열하는 함수라서 join함수를 이용하여 리스트 형태가 아닌 문자열의 형태로 값을 저장하도록 하였다. 모범답안 def solution(s): return ''.join(sorted(s, reverse=True)) ※ 알아야 할 것 - join 함수를 이용하면 ..
Programmers / 문자열 다루기 기본 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 문자열 다루기 기본 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12918 나의 풀이 def solution(s): if s.isnumeric() == True : if len(s) == 4 or len(s) == 6: return True else: return False else: return s.isnumeric() isnumeric() 함수는 값이 숫자인 경우 True, 그 외에는 False를 반환한다. 모범답안 def alpha_string46(s): return s.isdigit() and len(s) in (4, 6) 'len(s) 값이 [4,6]리스트에 포함되어 있나' 라는 코드..
Programmers / 서울에서 김서방 찾기 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 서울에서 김서방 찾기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12919 나의 풀이 def solution(seoul): return "김서방은 {}에 있다" .format(seoul.index('Kim')) ※ 알아야 할 것 - 인덱스 함수를 이용하면 바로 구할 수 있는 아주 쉬운 문제이다.
Programmers / 약수의 합 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 약수의 합 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12928 나의 풀이 def solution(n): s = [] for i in range(1,n+1): if n % i == 0: s.append(i) return sum(s) 모범답안 def sumDivisor(num): # num / 2 의 수들만 검사하면 성능 약 2배 향상잼 return num + sum([i for i in range(1, (num // 2) + 1) if num % i == 0]) ※ 알아야 할 것 - num / 2의 수만 검사한다니... 그러고보니 맞는 말이다. 반을 넘어간 값은 검사하지 않아도 된다.
Programmers / 자릿수 더하기 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 자릿수 더하기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12931 나의 풀이 def solution(n): #int로 입력된 N값을 문자열로 변환후 리스트로 저장 n = str(n) arr = list(n) for i in range(len(arr)): arr[i] = int(arr[i]) return sum(arr) 내 코드가 기본기를 다루는데는 충실하게 짠 코드라고 생각한다(??) 모범답안 def sum_digit(number): '''number의 각 자릿수를 더해서 return하세요''' return sum(map(int,str(number))) ※ 알아야 할 것 - 자릿 수가 많은..
Programmers / 짝수와 홀수 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 짝수와 홀수 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12937 나의 풀이 def solution(num): answer = '' if num % 2 == 0: answer = 'Even' else: answer = 'Odd' return answer ※ 알아야 할 것 - N % 2 == 0는 짝수, 홀수를 구할 때 많이 사용하는 식이다.
Programmers / 두 개 뽑아서 더하기 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 두 개 뽑아서 더하기 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/68644 나의 풀이 def solution(numbers): answer = [] for i in range(len(numbers)): for j in range(i+1,len(numbers)): answer.append(numbers[i]+numbers[j]) return sorted(list(set(answer))) 나의 풀이가 다른 사람들도 많이 제출한 풀이라서 처음엔 놀랐다... 중복을 제거하기 위해서 set함수를 사용하였고 리스트를 sorted함수로 정리해주었다. for문에서 오류가 많이 났었는데, 범위 정할 때 i ..
Programmers / 모의고사 / Python
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 모의고사 문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/42840 풀이 def solution(answers): person1 = [1,2,3,4,5] person2 = [2,1,2,3,2,4,2,5] person3 = [3,3,1,1,2,2,4,4,5,5] result = [] score = [0,0,0] for idx, answer in enumerate(answers): if answer == person1[idx%len(person1)]: score[0] +=1 if answer == person2[idx%len(person2)]: score[1] += 1 if answer == pers..