일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Grid #CSS
- 백준 #10430
- dify
- Kafka #카프카
- Python #pakage
- 오블완
- test #비교
- Node #POD #Container
- NameSpace #NS
- 티스토리챌린지
- publishnotreadyaddress
- EKS
- istio #k8s #kubernetes
- lenova #레노버 #노트북
- function #사용자 정의 함수
- Linux #wc
- dump #jattach
- lvm #lv #vg #pv
- jmap #jstack
- Swap Memory
- OCP
- EFK
- jgrp000032 #ocp #
- shell #shell script
- DB #mariaDB #SQL
- PODS #POD #pods #pod #파드 #재기동 #롤링재기동 #rolling
- bootstrap #css #CSS
- Excel #엑셀
- 네트워크 #NW
- CI #CD #CI/CD
- Today
- Total
목록Algorithm/Python (82)
BEOM_IT
# 시저암호# 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. # 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. # "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수 return# 아스키코드# 문자열을 숫자로 ord()# 숫자를 문자열로 chr()# 알파벳은 총 26개# 대소문자 구분으로 나누자def solution(s, n): S='' print(ord("a")) # print(ord("z")) print(ord("A")) # print(ord("Z")) for i in s: if i.isuppe..
# 최소직사각형# 명함의 가로 세로가 주어질때 가장 최적의 직사각형 구하기# 2중 배열인데 눕힐수 있으니... 길이가 맞으면 될것같다.def solution(sizes): answer = [0,0] for i in sizes: i=sorted(i) # print(i) if i[0] > answer[0]: answer[0]=i[0] if i[1] > answer[1]: answer[1]=i[1] return answer[0]*answer[1]def sol2(size): answer=[] a=0 b=0 for i ,j in size: if i
# 최대공약수와 최소공배수# 두 수의 최대공약수와 최소공배수를 반환# 최대 공약수 공통된 약수중 제일 큰값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..
# 점프와 순간이동# 거리 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
# 문자열 내림차순으로 배치하기# 문자열 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(..
# 약수 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..
# 가운데 글자 가져오기# 단어 s의 가운데 글자를 반환 만약 단어 길이가 짝수면 2개 반환def solution(s): answer = '' ls=len(s) a=ls//2 # 홀수일떄 if ls%2: answer+=s[a] # 짝수 else: answer+=s[a-1]+s[a] return answerprint(solution("abcde")) #cprint(solution("qwer")) # we
# 약수의 개수와 덧셈# left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return def solution(left, right): answer = 0 for num in range(left,right+1): print(num) # 약수 구하기 result = [] for i in range(1, int(num**(1/2))+1): if num%i==0: result.append(i) if i