728x90
반응형
화요일[괜찮아 괜찮아]
1. 이것이
2. 알고리즘
1>
이진 탐색 트리를 조금 더 보자면,
왼쪽 자식 노드 < 부모 노드 < 오른쪽 자식 노드가 성립
이진 탐색문제는 입력 데이터가 많거나, 탐색 범위가 넓은 편이다. 그래서 더더욱 빠르게 수행할 방법을 갈구해야한다.
sys라이브러리의 한 줄씩 입력을 맏는다
예시 )
import sys
input_data = sys.stdin.readline().rstrip()
# 입력받은 문자열 그대로 출력
print(input_data)
rstrip()함수는 readline()으로 입력하면 엔터가 줄 바꿈 기호로 입력되는데, 이 공백 문자를 제거하려면 rstrip()함수를 사용해야한다.
부품찾기
문제 설명: 정수 N이 주어지며 N개의 정수가 주어지고 M이 주어지며 M개의 정수가 주어진다.
해당 N개의 정수와 M개의 정수를 비교하여 No, Yes를 출력
import sys
a= input()
b = sys.stdin.readline().strip()
b = list(b)
c = int(input())
d = sys.stdin.readline().strip()
d = list(d)
for i in range(c):
if d[i] in b:
print("Yes")
else:
print("No")
답안:
def binary_search(array, target, start, end):
while start <= end:
mid = (start + end) //2
# 찾은 경우 중간점 인덱스 반환
if array[mid] == target:
return mid
# 중간점의 값보다 찾고자 하는 값이 작은 경우 왼쪽 확인
elif array[mid] > target:
end = mid -1
# 중간점의 값보다 찾고자 하는 값이 큰 경우 오른쪽 확인
else:
start = mid + 1
retrun None
n = int(input())
array = list(map(int, input().split()))
array.sort() #이진탐색을 수행하기 위해 사전에 정렬 수행
# M(손님이 확인 요청한 부품 개수) 입력
m = int(input())
# 손님이 확인 요청한 전체 부품 번호를 공백으로 구분하여 입력
x = list(map(int, input().split()))
# 손님이 확인 요청한 부품 번호를 하나씩 확인
for i in x:
result = binary_search(array, i, 0, n -1)
if result != None:
print("yes")
else:
print("no")
2>
정수의 합
def solution(a, b):
answer = 0
if a <= b :
for i in range(a,b+1):
answer += i
else :
for i in range(b, a+1):
answer += i
return answer
다른사람이 한 풀이
def adder(a, b):
# 함수를 완성하세요
if a > b: a, b = b, a
return sum(range(a,b+1))
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print( adder(3, 5))
콜라츠 추측
def solution(num):
if num == 1:
return 0
answer = -1
a= 500
while a > 0 :
if num == 1:
return 500-a
if num % 2 == 0:
num = num/2
a-=1
else:
num = num*3 +1
a-=1
return answer
피자 나눠먹기(2)
def solution(n):
for i in range(1,101):
if (i*6) % n == 0:
return i
다른사람이 한 풀이
def solution(n):
answer = 1
while answer * 6 % n != 0:
answer += 1
return answer
회사 면접으로 인해 많은 양을 수행하지 못함..ㅜ
그리고 도서관이 너무 추워서 집에 올 수 밖에없었다..ㅜㅜ
발이시려워 꽁
손이시려워 꽁
// yesterday wished to today list.
. 이것이_✔️
. 알고리즘_✔️
. SQL
. 암기고래
tomorrow wish list
. 이것이
. 알고리즘
. SQL
. 암기고래
728x90
반응형
'IT To do and To was' 카테고리의 다른 글
22년 12월 8일_김장하는 날이니 지금 해놔야지.. (0) | 2022.12.08 |
---|---|
22년 12월 7일_프로그래머스 SQL 작살 (0) | 2022.12.07 |
22년 12월 5일_기회는 나를 성장시키고 습관은 나를 만든다, 회사 코딩테스트 후기[내용 적음] (0) | 2022.12.06 |
22년 12월 4일_몸상태가..후달달, 순차탐색과, 이진탐색 (4) | 2022.12.04 |
22년 12월 2일_알고리즘, 토스, 정처기 계획, SQL 하나, 이것이 (0) | 2022.12.02 |