
2차원 리스트 지그재그 순회 (파이썬)
2022. 8. 21. 19:26
알고리즘 개념
지그재그 순회 코드 for i in range(N): for j in range(M): arr[i][j + (M-1-2*j) * (i%2)]

SWEA 1961 숫자 배열 회전 (파이썬)
2022. 8. 19. 20:36
SWEA
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pq-OKAVYDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 및 해석(주석) for tc in range(int(input())): N = int(input()) arr = [] for _ in range(N): arr += [list(map(int, input().split()))] ans1 = [['']*N for _ in range(N)] # 숫자들을 문자열로 만들 빈 리스트 생성 -> [['', '', ''], ['', '', ''], ['', ..

SWEA 1945 간단한 소인수 분해 (파이썬)
2022. 8. 19. 20:25
SWEA
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pl0Q6ANQDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 및 해석(주석) for tc in range(int(input())): num = int(input()) a, b, c, d, e = 0, 0, 0, 0, 0 while num != 1: # 입력받은 숫자가 1이 된 경우 종료 if num % 11 == 0: # 11부터 차례대로 탐색하고 각 숫자 변수에 넣어주기 num = num//11 e += 1 elif num % 7 == 0: num =..

SWEA 4871 그래프 경로 DFS (파이썬)
2022. 8. 18. 21:49
SWEA
https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do [SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com](https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do) 문제 V개 이내의 노드를 E개의 간선으로 연결한 방향성 그래프에 대한 정보가 주어질 때, 특정한 두 개의 노드에 경로가 존재하는지 확인하는 프로그램을 만드시오. 두 개의 노드에 대해 경로가 있으면 1, 없으면 0을 출력한다. 예를 들어 다음과 같은 그래프에서 1에서 6으로 가는 경로를 찾는 경우, 경로가 존재하므..

SWEA 4689 종이붙이기 (파이썬)
2022. 8. 18. 19:39
SWEA
https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 어린이 알고리즘 교실의 선생님은 경우의 수 놀이를 위해, 그림처럼 가로x세로 길이가 10x20, 20x20인 직사각형 종이를 잔뜩 준비했다. 그리고 교실 바닥에 20xN 크기의 직사각형을 테이프로 표시하고, 이 안에 준비한 종이를 빈틈없이 붙이는 방법을 찾아보려고 한다. N이 30인 경우 다음 그림처럼 종이를 붙일 수 있다. 10의 배수인 N이 주어졌을 때, 종이를 붙이는 모든 경우를 찾으려면 테이프로 만든 표시한 영역을 몇 개나 만들..

SWEA 2005 파스칼의 삼각형 (파이썬)
2022. 8. 18. 13:01
SWEA
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5P0-h6Ak4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 크기가 N인 파스칼의 삼각형을 만들어야 한다. 파스칼의 삼각형이란 아래와 같은 규칙을 따른다. 1. 첫 번째 줄은 항상 숫자 1이다. 2. 두 번째 줄부터 각 숫자들은 자신의 왼쪽과 오른쪽 위의 숫자의 합으로 구성된다. N이 4일 경우, N을 입력받아 크기 N인 파스칼의 삼각형을 출력하는 프로그램을 작성하시오. [제약 사항] 파스칼의 삼각형의 크기 N은 1 이상 10 이하의 정수이다. (1 ≤..

SWEA 12712 파리퇴치3 (파이썬)
2022. 8. 14. 22:16
SWEA
https://swexpertacademy.com/main/code/userProblem/userProblemDetail.do?contestProbId=AXuARWAqDkQDFARa [SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com](https://swexpertacademy.com/main/code/userProblem/userProblemDetail.do?contestProbId=AXuARWAqDkQDFARa) 문제 [제약 사항] 1. N 은 5 이상 15 이하이다. 2. M은 2 이상 N 이하이다. 3. 각 영역의 파리 갯수는 30 이하 이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고,..

파이썬 카운팅 정렬 알고리즘
2022. 8. 13. 16:36
알고리즘 개념
카운팅 정렬 항목들의 순서를 결정하기 위해 집합에 각 항목이 몇 개씩 있는지 세는 작업을 하여, 선형 시간에 정렬하는 효율적인 알고리즘 제한 사항 정수나 정수로 표현할 수 있는 자료에 대해서만 적용 가능 카운트들을 위한 충분한 공간을 할당하려면 집합 내의 가장 큰 정수를 알아야 한다. 시간 복잡도는 O(n + k): n은 리스트 길이, k는 정수의 최대값 1단계 data에서 각 항목들의 발생 회수를 세고, 정수 항목들로 직접 인덱스 되는 카운트 배열 counts에 저장한다. data가 [0, 4, 1, 3, 1, 2, 4, 1] 이라면 counts는 [1, 3, 1, 1, 2] 가 된다. 이 뜻은 counts의 각 인덱스 번호가 data에 있는 정수가 된다. 즉, 위의 counts에서 0은 1개, 1은 ..