본문 바로가기
반응형

Algorithm20

[LeetCode] Number of Changing Keys https://leetcode.com/problems/number-of-changing-keys/ int: s = s.lower() answer = 0 # 처음 문자를 가지고 origin = s[0] # 두번째 문자부터 for i in s[1:]: if i!=origin: answer += 1 origin = i return answer cs 제출 결과 속도가 느린편에 속한데, 빠른 사람들의 코드를 보면 크게 로직의 차이는 없다. 제일 빠른 사람의 코드이다. 1 2 3 4 5 6 7 8 9 class Solution: def countKeyChanges(self, s: str) -> int: s = s.lower() count = 0 for i in range(1,len(s)): if s[i] != s[.. 2024. 2. 24.
[LeetCode] 3042. Count Prefix and Suffix Pairs https://leetcode.com/problems/count-prefix-and-suffix-pairs-i Count Prefix and Suffix Pairs I - LeetCodeCan you solve this real interview question? Count Prefix and Suffix Pairs I - You are given a 0-indexed string array words. Let's define a boolean function isPrefixAndSuffix that takes two strings, str1 and str2: * isPrefixAndSuffix(str1, str2) returns truleetcode.com 주어진 string 리스트에서 하나의 단어가 .. 2024. 2. 23.
[Codility] CyclicRotation 파이썬 풀이 문제 링크: https://app.codility.com/programmers/lessons/2-arrays/ 문제 An array A consisting of N integers is given. Rotation of the array means that each element is shifted right by one index, and the last element of the array is moved to the first place. For example, the rotation of array A = [3, 8, 9, 7, 6] is [6, 3, 8, 9, 7] (elements are shifted right by one index and 6 is moved to the first plac.. 2024. 1. 23.
[Codility] BinaryGap 파이썬 풀이 문제 링크: https://app.codility.com/programmers/lessons/1-iterations/ 문제 A binary gap within a positive integer N is any maximal sequence of consecutive zeros that is surrounded by ones at both ends in the binary representation of N. For example, number 9 has binary representation 1001 and contains a binary gap of length 2. The number 529 has binary representation 1000010001 and contains two binary .. 2024. 1. 23.
[프로그래머스] 체육복 파이썬 풀이 - Greedy(탐욕법) 알고리즘 5명이라고 가정하고 0번째 6번째는 1로 채워준다. 무조건 있다고 가정을 하는 것 lost는 1을 빼주고 reserve는 1을 더해준다. lost = [2, 4] reserver = [1, 3, 5] 순서 0 1 2 3 4 5 6 초기화 1 1 1 1 1 1 1 lost 처리 1 1 1-1=0 1 1-1=0 1 1 reserve 처리 1 1+1=2 0 1+1=2 0 1+1=2 1 1부터 5까지 for문, i=1 1 2-1=1 0+1=1 2 0 2 1 1부터 5까지 for문, i=2 1 1 1 2 0 2 1 1부터 5까지 for문, i=3 1 1 1 2-1=1 0+1=1 2 1 1부터 5까지 for문, i=4 1 1 1 1 1 2 1 1부터 5까지 for문, i=5 1 1 1 1 1 2 1 1~5까지 1보.. 2022. 5. 31.
[프로그래머스][2022 카카오 블라인드] K진수에서 소수 개수 구하기 문제 https://programmers.co.kr/learn/courses/30/lessons/92335 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 풀이1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 def solution(n, k): answer = 0 k_num = n_jinsu(n, k) temp_list = k_num.split('0') for .. 2022. 4. 29.
[프로그래머스] 로또의 최고 순위와 최저 순위 - 파이썬 풀이 문제 https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 2021 Dev-Matching: 웹 백엔드 개발자(상반기)에 기출 된 문제이다 코드 1 2 3 4 5 6 7 8 9 10 def solution(lottos, win_nums): answer = [] winner = [6, 6, 5, 4, 3, 2, 1] low = len(list(set(lottos).int.. 2022. 4. 29.
[프로그래머스][2022 카카오 블라인드 테스트] 신고 결과 받기 - 파이썬 풀이 https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 풀이 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 def solution(id_list, report, k): id_dict = dict.fromkeys(id_list,0) answer = [] report_dict={} for i in report: n_from = i.split(' ')[0] n_to = i.s.. 2022. 4. 26.
[프로그래머스] 가장 큰 수(level 2) 파이썬 문제 풀이 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42746 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 문제 해결 방법(시간 초과) 1. 먼저 리스트에 정수가 있으므로 문자형으로 바꾸어준다. 2. 모든 가능한 조합을 만든 후에 가장 큰 수를 출력한다. from itertools import permutations def solution(num): permute = list(permutat.. 2021. 8. 27.
반응형