🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺
-
[Beginner_Coder👶🏻] 1304. 숫자삼각형3🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/🧡정보올림피아드 2021. 6. 23. 01:04
문제 설명 정사각형의 한 변의 길이 n을 입력 받은 후 다음과 같이 숫자로 된 정사각형 형태로 출력하는 프로그램을 작성 문제 풀이 n = int(input()) arr = [[0 for col in range(n)] for row in range(n)] number = 1 for i in range(n): for j in range(n): arr[j][i] = number number += 1 for i in arr: for j in i: print(j, end=" ") print() 출력결과 깨달은점 1. 파이썬에서 이차원 배열 생성하는 방법은 다음과 같다. arr = [[0 for col in range(n)] for row in range(n)] 2. 이차원 배열에 값을 넣은 다음, 다시 for문 ..
-
[Beginner_Coder👶🏻] 1856. 숫자사각형2🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/🧡정보올림피아드 2021. 6. 23. 00:23
문제 설명 사각형의 높이 n과 너비 m을 입력받은 후 사각형 내부에 지그재그 형태로 1부터 n*m번까지 숫자가 차례대로 출력되는 프로그램을 작성 문제 풀이 n, m = map(int, input().split()) num = 1 for i in range(n): if i % 2 == 0: for j in range(m): print(num, end=" ") num += 1 else: for k in range(m): num += 1 for l in range(num-1, num-1-m, -1): print(l, end= " ") print() 출력결과
-
[Beginner_Coder👶🏻] 1291. 구구단🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/🧡정보올림피아드 2021. 6. 19. 10:27
문제 설명 사용자가 입력한 범위만큼 가로로 구구단 출력하기 문제 풀이 # 구구단의 시작 범위 s와 끝 범위 e를 입력받는다. s와 e는 2부터 9사이의 정수 s, e = map(int, input().split()) if s and e not in range(2, 10): print("INPUT ERROR!") s, e = map(int, input().split()) if s 2}'.format(i, j, i*j), end=' ') print() if s > e: for j in range(1, 10): for i in range(s, e-1, -1): print('..
-
시간복잡도와 공간복잡도🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 2020. 8. 14. 11:55
시간복잡도 : 알고리즘에 사용되는 총 연산 횟수. ( 실행 시간 아님!!! ) *연산 : + , -, / , *, =, ==, ... 함수 return 문에서 연산횟수 1이라고 생각. 코드의 효율과 알고리즘을 판단하는데 사용된다. Big-O 시간 복잡도 : 시간복잡도 함수의 가장 높은 차수. 계수 X. 시간복잡에 미치는 영향이 매우 미미하기 때문이다. aN + b = O(N) aNlogN + b = O(NlogN) aN^2 + bN + c = O(N^2) -> N의 크기가 커질수록 점점 복잡도의 차이가 커진다. 계산법칙 1 : For/While loop이 한 번 중첩될 때마다 O(N) 계산법칙 2 : 자료구조(ex. 배열) 사용, 다른 함수 호출에는 각각의 O(N) 파악. * set은 O(1). 배열.s..
-
[알고리즘] Merge Sort🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 2020. 8. 11. 18:13
정렬된 두 배열 merge_sort(num_list, start_idx, end_idx) 처음부터 끝 인덱스 까지는 0, len(num_list)-1 중간값 mid_idx = (start_idx + end_idx) // 2 start_idx < end_idx 일 때 : merge_sort() 두번 호출하고, 합친다. 1. merge_sort(num_list, start_idx, mid_idx) 2. merge_sort(num_list, mid_idx+1, end_idx) 그리고 합친다! combine(num_list, start_idx, mid_idx, end_idx) l_idx = start_idx # start_idx ~ mid_idx r_idx = mid_idx + 1 # mid_idx+1 ~ en..
-
백준 6588번 - 골드바흐의 추측🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 2020. 5. 11. 17:31
교수님이 프로젝트 과제를 내주셨는데 백준 문제 6588번과 비슷한 것 같다. 문제 링크 https://www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 문제 1742년, 독일의 아마추어 수학가 크리스티안 골드바흐는 레온하르트 오일러에게 다음과 같은 추측을 제안하는 편지를 보냈다. 4보다 큰 모든 짝수는 두 홀수 소수의 합으로 나타낼 수 있다. www.acmicpc.net https://www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아..