자격증(22)
-
[COS Pro python 1급] 몇번 연산을 해야하나요
import queue def solution(number, target): answer = 0 visited = [0 for _ in range(10001)] q = queue.Queue() q.put(number) visited[number] = 1 while not q.empty(): x = q.get() if x == target: break if x+1 = 0 and visited[x-1] == 0: visited[x-1] = visited[x]+1 q.put(x-1) if 2*x
2023.03.16 -
[COS Pro python 1급] p진법 to q진법
D-4 def toten(n,p): ten=0 for i in range(len(n)): ten+=int(n[-(i+1)])*(p**i) return ten def toq(n,q): qnum='' while n>0: mok,namuji=divmod(n,q) qnum+=str(namuji) n=mok return qnum[::-1] def solution(s1, s2, p, q): answer = '' ten1=toten(s1,p) ten2=toten(s2,p) sum=ten1+ten2 answer=toq(sum,q) return answer 문자열 str뒤집기; str[::-1] divmod(a, b)함수; a를 b로 나눈 몫과 나머지를 튜플형식으로 반환,
2023.03.14 -
[COS Pro python 1급] 병합 and 정렬
def solution(arrA, arrB): arrA_idx = 0 arrB_idx = 0 arrA_len = len(arrA) arrB_len = len(arrB) answer = [] while arrA_idx < arrA_len and arrB_idx < arrB_len: if arrA[arrA_idx] < arrB[arrB_idx]: answer.append(arrA[arrA_idx]) arrA_idx += 1 else: answer.append(arrB[arrB_idx]) arrB_idx += 1 while arrA_idx < arrA_len: answer.append(arrA[arrA_idx]) arrA_idx += 1 while arrB_idx < arrB_len: answer.append..
2023.03.13 -
[COS Pro python 1급] 체스의 나이트
D-6 함수작성 문제를 처음으로 풀었다.. 물론 전 게시글을 많이 참고해서 풀긴했지만! https://mandu1212.tistory.com/6 def solution(pos): answer=0 pane = [[0 for j in range(8)] for i in range(8)] dy = [-1, -2, -2, -1, 1, 2, 2, 1] dx = [-2, -1, 1, 2, 2, 1, -1, -2] ci, cj = 0, 0 if pos[0]=='A': cj=0 elif pos[0]=='B': cj=1 elif pos[0]=='C': cj=2 elif pos[0]=='D': cj=3 elif pos[0]=='E': cj=4 elif pos[0]=='F': cj=5 elif pos[0]=='G': cj=6..
2023.03.12 -
[COS Pro python 1급] 2차원 리스트 방향좌표로 접근하기
https://mandu1212.tistory.com/4 정사각형 크기 격자 모양 정원에 칸마다 핀 꽃 또는 피지 않은 꽃을 심었습니다. 이 정원의 꽃이 모두 피는 데 며칠이 걸리는지 알고 싶습니다. 핀 꽃은 하루가 지나면 앞, 뒤, 양옆 네 방향에 있는 꽃을 피웁니다. 현재 정원의 상태를 담은 2차원 리스트 garden이 주어졌을 때, 모든 꽃이 피는데 며칠이 걸리는지 return 하도록 solution 함수를 작성해주세요.
2023.03.12 -
[COS Pro python 1급] 모의고사 10번
D-9 모의고사 10번. 메모장 문제 설명 한 줄에 K자를 적을 수 있는 메모장에 영어 단어들을 적으려 합니다. 영어 단어는 정해진 순서로 적어야 하며, 단어와 단어 사이는 공백 하나로 구분합니다. 단, 한 줄의 끝에 단어 하나를 완전히 적지 못한다면, 그 줄의 나머지 부분을 모두 공백으로 채우고 다음 줄부터 다시 단어를 적습니다. 예를 들어 한 줄에 10자를 적을 수 있고, 주어진 단어가 순서대로 ["nice", "happy", "hello", "world", "hi"] 인 경우 각 줄에 다음과 같이 적을 수 있습니다.('_'는 공백을 나타냅니다.) 첫째 줄 : "nice_happy" 둘째 줄 : "hello_____" 셋째 줄 : "world_hi" 이때, 둘째 줄에 "hello"를 적으면 단어를 적..
2023.03.11