전체 글 72

[알고리즘] tree 문제풀이

위 트리를 in-order 형식으로 순회할 경우 SOFTWARE 라는 단어를 읽을 수 있다. 아래 트리를 in-order 형식으로 순회했을때 나오는 단어를 출력하라. 위의 예시에서, 알파벳 ‘F’가 2번 정점에 해당하고 두 자식이 각각 알파벳 ‘O’인 4번 정점과 알파벳 ‘T’인 5번 정점이므로 “2 F 4 5”로 주어진다. 알파벳 S는 8번 정점에 해당하므로 “8 S” 로 주어진다. -출처 SW ACADEMY- [입력] 총 10개의 테스트 케이스가 주어진다. (총 테스트 케이스의 개수는 입력으로 주어지지 않는다) 각 테스트 케이스의 첫 줄에는 트리가 갖는 정점의 총 수 N(1≤N≤100)이 주어진다. 그 다음 N줄에 걸쳐 각각의 정점 정보가 주어진다. 정점 정보는 해당 정점의 문자, 해당 정점의 왼쪽 ..

[파이썬] 코딩 중간값 구하기

중간값은 통계 집단의 수치를 크기 순으로 배열 했을 때 전체의 중앙에 위치하는 수치를 뜻한다. 입력으로 N 개의 점수가 주어졌을 때, 중간값을 출력하라 N이 9 이고, 9개의 점수가 아래와 같이 주어질 경우, 85 72 38 80 69 65 68 96 22 69이 중간값이 된다. 이를 풀기위해 총 4가지의 단계를 거쳐야 한다. 입력을 받습니다. 먼저 N을 입력받고, 그 다음 줄에 N개의 점수를 입력받습니다. 점수를 정렬합니다. 정렬된 점수에서 중간값을 찾습니다. 중간값을 출력합니다. # 1. 입력 받기 N = int(input()) # 항상 홀수로 주어진다고 했으므로, 홀수 개의 점수가 주어집니다. scores = list(map(int, input().split())) # 2. 점수를 정렬합니다. sc..

[파이썬] 홀수 짝수 배수 조건 따라 새로운 리스트 출력하기

리스트에서 n의 배수가 아닌 수 제거한 배열 Q. 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return 하도록 solution 함수를 완성해 주세요. A. numlist 리스트 안에 n 배수(if num % n == 0)로만 채워지게 만들면 된다. 즉 들어있는 숫자를 for문으로 돌면서(for 숫자 in 리스트) n으로 나눴더니 0이 나온 숫자면 된다. def solution(n, numlist): return [num for num in numlist if num % n == 0] Another way of doing it is below. 새로운 리스트 만들어주고, 리스트 안에 넘버들 돌면서 만약 n으로 나눈 값이 0이면 새..

[파이썬] for x in range 홀수 짝수에 따라 다른 값 & 순회하며 계산하는 반복자(iterator)

홀짝에 따라 다른 값 반환하기 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요. 먼저 주어진 조건부터 적어보자. 만약 n이 짝수라면 2로 나누어서 몫이 0이 될것이다if n % 2 == 0: . 홀수를 구해보자. if 만약 n%2 한 값이 0이 아니라면 if n % 2 != 0: 짝수가 아닐 것이다. !표를 넣어서 아니다를 만들어준다. 코드에서는 먼저 주어진 정수 n이 홀수인지 짝수인지를 판별하고, 그에 따라 적절한 계산을 수행하여 반환한다. 홀수인 경우에는 n 이하의 홀수의 합을, 짝수인 경우에는 n 이하의 짝수의 제곱의 ..

[파이썬02] [:n] range 숫자를 차례로 담은 리스트 (오름차순,내림차순)

리스트와 아무 숫자(n) 주고, 주어진 n개수만큼 리스트 n개 출력 Q. 정수 리스트 num_list와 정수 n이 주어질 때, num_list의 첫 번째 원소부터 n 번째 원소까지의 모든 원소를 담은 리스트를 return 하도록 solution 함수를 완성해 주세요. A. 만약 5라고 하면 1,2,3,4,5를 모두 담은 리스트를 출력해야한다. 그러기 위해서 리스트[:숫자] 하면 그 숫자까지 출력해주고 리스트[숫자:] 하면 그 숫자 이후부터 출력한다. def solution(num_list, n): return num_list[:n] example 01. result = solution([1, 2, 3, 4, 5]) 오름차순 1,2,3,4,5를 출력하는 다양한 방식에 대해 배워보자. 먼저 1과 5를 주고 ..

[파이썬] 붙여서 출력하기

문자열 붙여서 출력하기 두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다. 입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요. # 두 개의 문자열을 공백을 기준으로 입력 받음 str1, str2 = input().split() # 두 문자열을 이어붙여 출력 print(str1 + str2) str1, str2 = input().split(): 사용자로부터 입력을 받습니다. input() 함수를 통해 사용자가 입력한 값을 받고, .split() 메서드를 통해 문자열을 공백을 기준으로 분리합니다. 분리된 부분 문자열들은 리스트에 담겨 반환되는데, 이 리스트의 각 요소들이 str1과 str2에 순서대로 할당됩니다. print(str1 + str2): str1..

[파이썬] .upper() 소문자 -> 대문자 -> 소문자 .lower() 변경

소문자를 대문자로 변환해 보자 알파벳으로 이루어진 문자열 myString이 주어집니다. 모든 알파벳을 대문자로 변환하여 return 하는 solution 함수를 완성해 주세요. def solution(myString): return myString.upper() 이 코드에서는 upper() 메서드를 사용하여 문자열 myString에 포함된 모든 알파벳을 대문자로 변환합니다. 따라서 주어진 문자열의 모든 알파벳을 대문자로 변환하여 반환합니다. 반대로 모든 대문자를 소문자로 변환할 때는 어떻게 할까? 대문자를 소문자로 변환하는 방법은 lower() 메서드를 사용하는 것입니다. 이 메서드는 문자열에 포함된 모든 대문자를 소문자로 변환합니다. 아래는 주어진 문자열의 모든 대문자를 소문자로 변환하는 함수입니다. ..

[파이썬 문제풀이] 지그재그 숫자

1부터 N까지의 숫자에서 홀수는 더하고 짝수는 뺐을 때 최종 누적된 값을 구해보자. -출처: SW ACADEMY- [예제 풀이] N이 5일 경우, 1 – 2 + 3 – 4 + 5 = 3 N이 6일 경우, 1 – 2 + 3 – 4 + 5 – 6 = -3 # 테스트 케이스의 개수 입력 T = int(input()) # 각 테스트 케이스에 대해 처리 for t in range(1, T + 1): # 테스트 케이스 입력 N = int(input()) # 누적 값 초기화 total = 0 # 1부터 N까지 반복하면서 홀수는 더하고 짝수는 빼는 연산 수행 for i in range(1, N + 1): if i % 2 == 1: total += i else: total -= i # 결과 출력 print(f'#{t} ..

[파이썬] 수 조작하기, 정수 찾기, 홀수찾기, 뒤에서 5등까지

수 조작하기 정수 n과 문자열 control이 주어집니다. control은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control의 앞에서부터 순서대로 문자에 따라 n의 값을 바꿉니다. "w" : n이 1 커집니다. "s" : n이 1 작아집니다. "d" : n이 10 커집니다. "a" : n이 10 작아집니다. 위 규칙에 따라 n을 바꿨을 때 가장 마지막에 나오는 n의 값을 return 하는 solution 함수를 완성해 주세요. def solution(n, control): for c in control: if c == "w": n += 1 elif c == "s": n -= 1 elif c == "d": n += 10 elif c == "a": n -= 10 return ..

[파이썬 01] [:n] 오름차순 내림차순 정렬 sorted 반대로 reverse

리스트와 아무 숫자(n) 주고, 주어진 n개수만큼 리스트 n개 출력 Q. 정수 리스트 num_list와 정수 n이 주어질 때, num_list의 첫 번째 원소부터 n 번째 원소까지의 모든 원소를 담은 리스트를 return 하도록 solution 함수를 완성해 주세요. A. 만약 5라고 하면 1,2,3,4,5를 모두 담은 리스트를 출력해야한다. 그러기 위해서 리스트[:숫자] 하면 그 숫자까지 출력해주고 리스트[숫자:] 하면 그 숫자 이후부터 출력한다. def solution(num_list, n): return num_list[:n] 오름차순 정수로 이루어진 리스트 num_list가 주어집니다. num_list에서 가장 작은 5개의 수를 오름차순으로 담은 리스트를 return하도록 solution 함수를 ..