프로그래머스 | Python | 다항식 더하기
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내 코드def solution(polynomial): sep = polynomial.split(' + ') x = 0 num = 0 for i in sep: if 'x' in i: if i == 'x': x += 1 else: x += int(i.replace('x', '')) else: num += int(i) result = [] if x: result.append(f"{x}..
프로그래머스 | Python | 캐릭터의 좌표
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내코드def solution(keyinput, board): x, y = 0, 0 limit_x = (board[0] - 1) // 2 limit_y = (board[1] - 1) // 2 for key in keyinput: if key == "left": x -= 1 elif key == "right": x += 1 elif key == "up": y += 1 elif key == "down": y ..
프로그래머스 | Python | 로그인 성공?
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내코드def solution(id_pw, db): for i in db: if i[0] == id_pw[0]: if i[1] == id_pw[1]: return "login" else: return "wrong pw" return "fail"코드설명for문을 이용해 db를 순회하면서 각 회원 정보를 확인합니다.입력된 id_pw와 비교하여 아이디가 일치하면 비밀번호를 추가로 검사합니다.아이디와 비밀번호가 모두 일치하면 "login"을 반환합니다...
프로그래머스 | Python | 직사각형 넓이 구하기
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내 코드def solution(dots): [[x1, y1], [x2, y2], [x3, y3], [x4, y4]] = dots a = max(x1, x2, x3, x4) - min(x1, x2, x3, x4) b = max(y1, y2, y3, y4) - min(y1, y2, y3, y4) return a*b코드설명dots 배열에서 네 점의 좌표를 각각 변수 x1, y1, x2, y2, x3, y3, x4, y4로 분리합니다.x1, x2, x3, x4의 최대값과 최소값의 차이를 구해 직사각형의 가로 길이 a를 계산합니다.y1, y2, ..
프로그래머스 | Python | OX퀴즈
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내 코드def solution(quiz): answer = [] for i in quiz: j, k = i.split(' = ') if eval(j) == int(k): answer.append("O") else: answer.append("X") return answer코드설명split(' = ')로 수식 분리수식을 ' = ' 기준으로 나누어 왼쪽(j)과 오른쪽(k) 부분으로 분리합니다.j는 연산자가 포함된 수식이고, k는 결과값입니다.eval()을 사용해 계산ev..
프로그래머스 | Python | 외계어 사전
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내 코드def solution(spell, dic): for i in dic: if set(spell) == set(i): return 1 return 2코드 설명spell에 담긴 알파벳을 set 자료형으로 변환해 중복 없이 저장합니다.dic에 있는 단어들을 하나씩 검사하며, 각 단어를 set으로 변환한 후 spell과 비교합니다.조건을 만족하면 1을 반환하고, 모든 단어를 확인해도 조건을 만족하지 않으면 2를 반환합니다.특징집합 비교: set을 사용하여 두 단어에 포함된 알파벳이 동일한지만 검사합니다.중복 무시: ..
프로그래머스 | Python | 암호 해독
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내코드def solution(cipher, code): answer="" jump = code while jump 코드설명answer라는 빈 문자열을 초기화합니다.jump라는 변수에 code 값을 넣어줍니다. 이 변수는 해당 위치를 점프하며 검사하기 위해 사용됩니다.while 루프를 이용해 jump 값이 cipher 길이 이하일 때까지 반복합니다.cipher[jump-1]를 가져와 answer에 추가합니다.jump 값에 code를 더해 다음 배수 번째 문자를 탐색합니다.반복이 끝나면 answer를 반환합니다.특징명확한 루프 구조: 반복문과 ..
프로그래머스 | Python | 구슬을 나누는 경우의 수
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내코드import mathdef solution(balls, share): return math.factorial(balls)/(math.factorial(balls-share)*math.factorial(share))코드설명조합 공식인 (nr)=n!(n−r)!⋅r!\binom{n}{r} = \frac{n!}{(n-r)! \cdot r!}을 직접 구현했습니다.math.factorial 함수를 사용해 구슬의 개수에 대한 팩토리얼 값을 계산한 뒤, 이를 공식에 대입해 조합 값을 반환합니다.구슬의 개수 balls와 고를 개수 share를 활용해 조합의 경우의..
프로그래머스 | Python | 삼각형의 완성조건 (2)
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내 코드def solution(sides): # 두 변 중 짧은 변과 긴 변을 정리 short, long = sorted(sides) # 가능한 x의 범위를 계산 min_x = long - short + 1 # x가 긴 변 - 짧은 변보다 커야 함 max_x = long + short - 1 # x가 긴 변 + 짧은 변보다 작아야 함 # 가능한 x의 개수 계산 return max_x - min_x + 1코드설명주어진 두 변을 오름차순으로 정렬하여 짧은 변(short)과 긴 변(long)을 구합니다.나머지..
프로그래머스 | Python | 영어가 싫어요
·
프로그래머스
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내코드def solution(numbers): dic = {"zero": "0", "one": "1", "two": "2", "three": "3", "four": "4", "five": "5", "six": "6", "seven": "7", "eight": "8", "nine": "9"} for i, j in dic.items(): numbers = numbers.replace(i, j) return int(numbers)코드설명딕셔너리 dic에 영어로 된 숫자와 그에 해당하는 문자열 숫자를 매핑합니다.예: "..