취뽀 기록

#열심히 살자 #취업 #공부

코린이 탈출 일지

[코드트리] 공백을 사이에 두고 입력

python에서 입력은 한 줄 단위로만 받을 수 있습니다. 만약 2개의 숫자를 한 줄에 공백을 사이에 두고 받고 싶다면 코드를 어떻게 작성하면 될까요? python에는 split()이라는 함수가 있습니다. 이 함수는 문자열을 특정 기준으로 잘라주는 함수입니다. 예를 들어 다음과 같이 split 함수를 그대로 사용하면, 공백을 기준으로 문자열을 잘라 각 잘려나간 단위가 하나의 원소가 되어 해당 원소들을 가지고 있는 하나의 list가 만들어집니다. python3 코드 a = input() print(a.split()) 출력결과 >> 13 17 ['13', '17'] list라는 것은 여러 원소를 들고있는 묶음으로, list 안에 있는 각 원소를 참조하기 위해서는 원소의 번째 수 - 1 값을 대괄호 []와 같..

[코드트리] 2023.06.15 0

[Level 4] 특정 세대의 대장균 찾기

SELECT T3.ID FROM ECOLI_DATA T1 JOIN ECOLI_DATA T2 JOIN ECOLI_DATA T3 WHERE T1.PARENT_ID IS NULL AND T2.PARENT_ID = T1.ID AND T3.PARENT_ID = T2.ID ORDER BY ID 과정은 이렇다. 1. 1세대 대장균은 PARENT_ID가 NULL값이어야 하므로 WHERE 조건에 추가하기 2. T2는 2세대 대장균이다. 따라서 T2의 부모ID가 T1 ID가 되도록 조건 추가 3. 마찬가지로 T3는 3세대 대장균이다. 따라서 T3의 부모ID가 T2의 ID가 되도록 조건 추가

[프로그래머스] 2024.04.19 0

[코드트리] Min/Max > 가장 왼쪽에 있는 최댓값(★)

N개의 숫자가 주어졌을 때, 주어진 숫자들 중 최댓값의 위치를 출력합니다. 만약 최댓값이 여러 개라면, 가장 왼쪽에 있는 최댓값의 위치를 출력합니다. 그 이후에는 위에서 구한 최댓값의 위치보다 더 왼쪽에 있는 숫자들 중 최댓값을 구해 그 위치를 출력합니다. 이 경우에도 최댓값이 여러 개라면, 가장 왼쪽에 있는 최댓값의 위치를 출력합니다. 위의 과정을 끊임없이 반복하며, 최종적으로 첫 번째 원소가 뽑히게 되면 이 과정을 종료합니다. 이러한 과정을 거쳐 구해진 최댓값의 위치들을 출력하는 프로그램을 작성해보세요. # 변수 선언 및 입력 n = int(input()) a = list(map(int, input().split())) prev_max_idx = n # 첫 번째 원소가 최대가 되기 전까지 계속 반복합..

[코드트리] 2023.07.02 0

[코드트리] 배열 만들기 > 숫자들의 배수

1이상 10이하의 정수 중 한 개를 입력받아 배수들을 차례로 출력하다가 5의 배수가 2번 출력되면 종료되는 프로그램을 작성해보세요. 단, 배열을 이용하여 해결해보세요. # 배열 선언 arr = [] cnt = 0 # 정수 한 개를 입력받아 배열의 첫 인덱스에 저장 n = int(input()) arr.append(n) # 입력받은 정수의 배수를 배열에 저장 for i in range(1, 10): a = arr[i - 1] + arr[0] arr.append(a) # 배열의 원소들을 출력하다가 5의 배수가 2번 나오면 출력을 멈춤 for elem in arr: print(elem, end=" ") if elem % 5 == 0: cnt += 1 if cnt >= 2: break # 나의 풀이 ------..

[코드트리] 2023.06.29 0

[코드트리] 한 줄에 여러 개 입력 > 짝수들을 거꾸로 출력

n개의 원소가 차례대로 주어졌을 때, 짝수인 수만 출력하려고 합니다. 이 때, 출력의 순서를 입력의 순서와 반대로 하는 프로그램을 작성해보세요. 예를 들어, 입력된 숫자들이 1 2 3 4 5 6 이라면 출력이 6 4 2 가 되도록 합니다. # 정수의 개수 n을 입력받습니다. n = int(input()) # 배열을 구현하여 주어진 수를 입력받습니다. arr = list(map(int, input().split())) # 입력받은 수들을 거꾸로 보면서 짝수인 값만 출력합니다. for i in range(n-1, -1, -1): if arr[i] % 2 == 0: print(arr[i], end=" ") # 나의 풀이 ---------------------- n = int(input()) num = list..

[코드트리] 2023.06.28 0

[코드트리] 한 줄에 여러 개 입력 > 배열의 특정 위치 찾기

10개의 정수가 차례로 주어지는데, 0이 주어지면 그때까지 주어진 정수 중 2의 배수의 개수와 합계를 출력하는 프로그램을 작성해보세요. # 배열에 주어진 수를 입력받아 저장합니다. arr = list(map(int, input().split())) sum_val = 0 cnt = 0 # 배열에 0이 있는지 확인합니다. 0이 나오지 않았을 경우 짝수의 개수와 합을 구합니다. for elem in arr: if elem == 0: break if elem % 2 == 0: sum_val += elem cnt += 1 print(cnt, sum_val) # 나의 풀이 ------------------------------------ arr = list(map(int, input().split())) cnt =..

[코드트리] 2023.06.28 0

[python] list 리스트_리스트의 원소 합 구하기 map 함수

한 줄에 공백을 사이에 두고 10개의 숫자가 주어졌을 때, 이 숫자들의 합을 구하는 코드를 작성해보자. 공백을 사이에 두고 숫자가 주어지는 경우 input( ).split( ) 으로 입력받을 수 있다. arr = input().split() print(arr) >> 3 5 7 ['3', '5', '7'] 위의 코드를 실행해보면, 각 원소의 type이 int가 아닌 str인 것을 알 수 있다. 따라서 10개 원소의 합을 구하는 과정은 다음과 같다. arr = input().split() sum_val = int(arr[0]) + int(arr[1]) + ... + int(arr[9]) print(sum_val) 위의 코드를 for loop을 이용하여 더 쉽게 바꿀 수 있다. arr = input().spl..

[개념 및 문법] 2023.06.28 0

[코드트리] n번 반복 > 짝수의 합 n번 구하기

n번에 걸쳐 두 정수 a, b가 주어졌을 때, a부터 b까지의 짝수를 모두 합한 결과를 출력하는 프로그램을 작성해보세요. # 변수 선언 및 입력 n = int(input()) # n회 반복합니다. for i in range(n): # 변수 선언, 입력 inp = input() arr = inp.split() a, b = int(arr[0]), int(arr[1]) ans = 0 # a부터 b까지 짝수를 전부 더한 값을 출력합니다. for j in range(a, b + 1): if j % 2 == 0: ans += j print(ans) # 나의 풀이 ------------------------------------------ n = int(input()) # input 개수 지정 for i in ran..

[코드트리] 2023.06.27 0

[코드트리] n번 반복 > 소수 구하기

1이상 n이하의 소수를 오름차순으로 출력하는 프로그램을 작성해보세요. # 변수 선언 및 입력 n = int(input()) # 1부터 n까지 소수를 구합니다. for i in range(1, n + 1): if i == 1: continue isprime = True for j in range(2, i): if i % j == 0: isprime = False if isprime: print(i, end=" ") # 나의 풀이 ------------------------------- n = int(input()) for i in range(1, n+1): # 1부터 n까지의 수 중에서 cnt = 0 # cnt 변수 초기화(cnt 변수에는 약수의 개수 저장) for j in range(1, i+1): # ..

[코드트리] 2023.06.27 0