본문 바로가기

CodingTest34

SWEA - 두 개의 숫자열(1959) SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 N 개의 숫자로 구성된 숫자열 Ai (i=1~N) 와 M 개의 숫자로 구성된 숫자열 Bj (j=1~M) 가 있다. 아래는 N =3 인 Ai 와 M = 5 인 Bj 의 예이다. Ai 나 Bj 를 자유롭게 움직여서 숫자들이 서로 마주보는 위치를 변경할 수 있다. 단, 더 긴 쪽의 양끝을 벗어나서는 안 된다. 서로 마주보는 숫자들을 곱한 뒤 모두 더할 때 최댓값을 구하라. 위 예제의 정답은 아래와 같이 30 이 된다. [제약 사항] N 과 M은 3 이상 20 이하이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주.. 2023. 10. 25.
Programmers - 성격 유형 검사하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나만의 카카오 성격 유형 검사지를 만들려고 합니다. 성격 유형 검사는 다음과 같은 4개 지표로 성격 유형을 구분합니다. 성격은 각 지표에서 두 유형 중 하나로 결정됩니다. 지표 번호 성격 유형 1번 지표 라이언형(R), 튜브형(T) 2번 지표 콘형(C), 프로도형(F) 3번 지표 제이지형(J), 무지형(M) 4번 지표 어피치형(A), 네오형(N) 4개의 지표가 있으므로 성격 유형은 총 16(=2 x 2 x 2 x 2)가지가 나올 수 있습니다. 예를 들어, "RFMN"이나 "TCMA"와 같은 성격 유형이 .. 2023. 10. 24.
SWEA - 패턴 마디의 길이(2007) 문제 패턴에서 반복되는 부분을 마디라고 부른다. 문자열을 입력 받아 마디의 길이를 출력하는 프로그램을 작성하라. [제약 사항] 각 문자열의 길이는 30이다. 마디의 최대 길이는 10이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 길이가 30인 문자열이 주어진다. 접근방식 입력되는 문자열을 words 변수에 받음 그리고 문자열을 한 문자씩 자르기 위해 list(words)를 listed_words라는 변수에 할당 빈 배열 arr를 선언해주고 listed_words길이만큼 j를 인자로 for문을 돌면서 j번째 문자가 arr에 없으면 arr에 할당해줌 만약 문자가 있으면 해당 문자가 문자열 반복이 끝나고 나오는 .. 2023. 10. 23.
코딩테스트 준비 - 파이썬 문법 정리 파이썬의 자료형 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 사전 정수형 정수를 다루는 자료형 양의 정수, 0, 음의 정수가 포함 실수형 소수점 아래의 데이터를 포함하는 수 자료형 소수부가 0일 때 0 생략 가능 지수 표현 방식 파이썬에서는 e나 E를 이용한 지수 표현 방식 이용 e, E 다음에 오는 수는 10의 지수부를 의미 ex) 1e9 -> 10의 9제곱(1,000,000,000). 1 x 10^9 최단 경로 알고리즘에서는 도달할 수 없는 노드에 대해 최단 거리를 무한(INF)로 설정하곤 함 이때 가능한 최댓값이 10억 미만이라면 무한(1NF)의 값으로 1e9를 이용할 수 있음 # 1,000,000,00의 지수 표현 방식 a = 1e9 print(a)// 1000000000.0 #752.5.. 2023. 10. 22.
코딩테스트 준비 - 알고리즘 성능 평가 복잡도란? 시간 복잡도: 특정 크기의 입력에 대해 알고리즘의 수행 시간 분석 공간 복잡도: 특정 크기의 입력에 대해 알고리즘의 메모리 사용량 분석 시간 복잡도가 높다 -> 알고리즘 실행에 오랜 시간이 걸린다 공간 복잡도가 높다 -> 알고리즘 실행에 많은 메모리가 사용된다 빅오 표기법 가장 빠르게 증가하는 항만 고려하는 표기법 ex) 연산 횟수가 3N^3 + 5N^2 + 1,000,000 이면 시간 복잡도는 O(N^3) 알고리즘 설계 팁 연산 횟수가 5억을 넘어가는 경우: - C언어: 1~3초 가량 시간 소요 - Python: 5~15초 가량 시간 소요 코딩테스트 문제에서 시간제한은 통상 1~5초 가량 수행 시간 측정 소스코드 예제 import time start_time = time.time() # 측정.. 2023. 10. 21.
SWEA - 스도쿠 검증(1974) SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 스도쿠는 숫자퍼즐로, 가로 9칸 세로 9칸으로 이루어져 있는 표에 1 부터 9 까지의 숫자를 채워넣는 퍼즐이다. 같은 줄에 1 에서 9 까지의 숫자를 한번씩만 넣고, 3 x 3 크기의 작은 격자 또한, 1 에서 9 까지의 숫자가 겹치지 않아야 한다. 입력으로 9 X 9 크기의 스도쿠 퍼즐의 숫자들이 주어졌을 때, 위와 같이 겹치는 숫자가 없을 경우, 1을 정답으로 출력하고 그렇지 않을 경우 0 을 출력한다. [제약 사항] 1. 퍼즐은 모두 숫자로 채워진 상태로 주어진다. 2. 입력으로 주어지는 퍼즐의 모든 숫자는 1 이상 9 이하의 정수이다. 접근방식 arr.. 2023. 10. 21.