728x90
반응형

2024/05 7

[programmers]python 12940 최소공배수 최대공약수

# 최대공약수와 최소공배수# 두 수의 최대공약수와 최소공배수를 반환# 최대 공약수 공통된 약수중 제일 큰값def solution(n, m): answer = [] # 최대 공약수는 지수를 활용 value=min(n,m) for i in range(1,value+1): if n%i==0 and m%i==0: answer.append(i) minv=answer[-1] n/=minv m/=minv # 최소 공배수는 나머지와 최대공약수의 곱 maxv=int(minv*n*m) return [minv,maxv]def solution(n, m): answer = [] # 최대 공약수는 지수를 활용 value = mi..

Algorithm/Python 2024.05.31

[programmers]python 12980 점프와 순간이동

# 점프와 순간이동# 거리 N이 주어지고 점프는 1칸을 가면 1의 건전지가 달고# 순간이동은 (현재까지 이동 거리) X 2의 거리를 이동 가능# 최소의 건전지 사용한 답 구하기 = 탐욕법(Greedy) 풀이# 위치 x 에서 0으로 갈떄 2의 배수라면 순간이동 홀수라면 배터리 카운트def solution(n): answer = 0 while n > 0 : if n % 2 == 1 : answer += 1 n //= 2 return answerprint(solution(5000)) #5# print(solution(6)) #2

Algorithm/Python 2024.05.28

[programmers]python 12917 문자열 내림차순 배치

# 문자열 내림차순으로 배치하기# 문자열 s에 나타나는 문자를 쿤것부터 작은순으로 정렬해 새로운 문자열 리턴# 문자열을 ascii code로 변환해서 순서를 맞춘 후 다시 정렬# ord() chr()# 굳이 변환해서 안풀어도 괜찮네?def solution(s): return ''.join(sorted(s,reverse=True)) # answer = [] # ans='' # for i in s: # print(i) # answer.append(ord(i)) # answer.sort() # answer=reversed(answer) # for i in answer: # ans+=(chr(i)) # return ansprint(..

Algorithm/Python 2024.05.17

약수구하기

# 약수 1~자신 까지 1씩 증가하면서 나누어 떨어지는 경우 리스트에 추가# 시간복잡도 O(n)def divisor(number): result = [] for i in range(1, int(number**(1/2))+1): if number%i==0: result.append(i) return result# 어떤 수 N의 약수는 항상 N=A∗B로 나타낼 수 있다는 점에서 착안하여, A를 구할 경우 B까지 리스트에 추가해주는 방식으로 효율 상승# 시간 복잡도 O(n)을 O(n^1/2)def divisor(number): result = [] for i in range(1, int(number**(1/2))+1): if number..

Language/Python 2024.05.09

[programmers] python 181875 배열에서 문자열 대소문자 변환

# 배열에서 문자열 대소문자 변환하기# 배열에서 홀수번째 인덱스의 문자열은 모든 문자를 대문자로, 짝수번째 인덱스의 문자열은 모든 문자를 소문자로 바꿔서 반환하는 solutiondef solution(strArr): ls=len(strArr) for i in range(0,ls): if i%2==0: strArr[i]=strArr[i].lower() else: strArr[i]=strArr[i].upper() return strArr print(solution(["AAA","BBB","CCC","DDD"]))

Algorithm/Python 2024.05.07
728x90
반응형