본문 바로가기

전체 글197

20230508 TIL - 알고리즘 1️⃣ [알고리즘] 프로그래머스 - 기사단원의 무기 [알고리즘] 프로그래머스 - 기사단원의 무기 기사단원의 무기 1. 구해야 하는 것 # 총 철의 무게 2. 1을 구하기 위해 필요한 것 # 공격력이 몇인 무기를 구매할 것인가? # 둘을 비교해서 넘기면 power로 공격력 # 기사번호의 약수의 개수(=공격력) codemte.tistory.com 2️⃣ [알고리즘] 프로그래머스 - 괄호 회전하기 [알고리즘] 프로그래머스 - 괄호 회전하기 괄호 회전하기 입출력 예) 더보기 1. 구해야 하는 것 # 괄호로만 이루어진 문자열 s를 왼쪽으로 회전시켜서 # 올바른 괄호문자열이 되는 x의 개수 2. 1을 구하기 위해 필요한 것 # 이동시킨 문자열 codemte.tistory.com 2023. 5. 8.
[알고리즘] 프로그래머스 - 괄호 회전하기 괄호 회전하기 입출력 예) 더보기 1. 구해야 하는 것 # 괄호로만 이루어진 문자열 s를 왼쪽으로 회전시켜서 # 올바른 괄호문자열이 되는 x의 개수 2. 1을 구하기 위해 필요한 것 # 이동시킨 문자열이 유효한가를 판단 및 삭제 # 스택에 하나씩 쌓아가면서, 스택에 만약 여는 괄호가 있고, # 마지막으로 들어온 원소가 닫는 괄호라면 둘다 없애기 # 회전시킬 방법 # for문을 사용해 원소를 슬라이싱해서 불이기 3. 그 외 고려해야 할 사항 # 스택? # 시간복잡도? 1. 처음 접근(실패) for문과 슬라이싱을 통해 문자열을 한번 회전시킨 문자열을 s_spin이라는 변수에 할당 여는 괄호가 스택에 들어있고, 스택의 마지막 원소가 닫는 괄호라면, 해당 괄호를 replace 그러나 다음과 같은 상황에서 문제 .. 2023. 5. 8.
[알고리즘] 프로그래머스 - 기사단원의 무기 기사단원의 무기 1. 구해야 하는 것 # 총 철의 무게 2. 1을 구하기 위해 필요한 것 # 공격력이 몇인 무기를 구매할 것인가? # 둘을 비교해서 넘기면 power로 공격력 # 기사번호의 약수의 개수(=공격력) # 협약에 의한 제한(=limit) # 기사별로 공격력이 몇인 무기를 구매할지를 구한 뒤 # 리스트를 바탕으로 철의 무게 계산 3. 그 외 고려해야 할 사항 # number가 100000까지 # 리스트를 먼저 만들고 비교한다. # 문자열로 쓰면, replace를 사용가능? 1. 풀이 # 약수 개수 구하기 a = [0]*number # 기사 인원수만큼의 길이를 가진 리스트 생성 for i in range(1, number+1): # 각각 기사들 한명한명에 대해 for j in range(1, in.. 2023. 5. 8.
WIL 20230501 ~ 20230507 - 알고리즘, 공식문서 읽기 1️⃣ AWS AWS EC2 instance connect - ERR_CONNECTION_REFUSED EC2 - instances - Launch instances instance name 입력 Ubuntu instance type - t2.micro keypair 선택 Launch instance instance_id 클릭 후 - Security - Inbound rules에 http, https 추가해주고, Connect sudo apt-get update sudo apt-get install nginx codemte.tistory.com 2️⃣ 선발대 과제 - 파스칼의 삼각형 [알고리즘] NBC 선발대 과제 - 파스칼의 삼각형 ''' line1 = [1] line2 = [1, 1] line3 = .. 2023. 5. 7.
20230504 TIL - 알고리즘 1️⃣ 알고리즘 문제풀이 [알고리즘] 프로그래머스 - 최대공약수와 최소공배수 [알고리즘] 프로그래머스 - 최대공약수와 최소공배수 최대공약수와 최소공배수 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으 codemte.tistory.com [알고리즘] 프로그래머스 - 행렬의 덧셈 [알고리즘] 프로그래머스 - 행렬의 덧셈 행렬의 덧셈 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers. codemte.tistory.com [알고리즘] 프로그래머스 - 내적 [알고리즘.. 2023. 5. 4.
[알고리즘] 프로그래머스 - 달리기 경주 달리기 경주 1. 구해야 하는 것 # calligns가 다 끝난 뒤 배열 2. 1을 구하기 위해 필요한 것 # callings의 원소마다 players의 해당하는 값을 옮기기 # calling과 동일한 players의 원소와 그 앞의 원소 위치변경 # swap을 통해 바꾸기 3. 그 외 고려해야 할 사항 # 5 ≤ players의 길이 ≤ 50,000 # 2 ≤ callings의 길이 ≤ 1,000,000 # callings안에서 players.index()를 한번만 호출해도 500억번 연산을 시작 # players를 딕셔너리로 바꿔서 시간 복잡도 줄이기 1. players를 index와 함께 딕셔너리에 enumerate를 사용해 넣는다. 2. callings의 i에 해당하는 값을 딕셔너리에서 찾아서 변.. 2023. 5. 4.
[알고리즘] 프로그래머스 - 연속된 수의 합 연속된 수의 합 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 구해야 하는 것 # 더해서 total이 되는 연속된 수들의 배열 2. 1을 구하기 위해 필요한 것 # 기준이 되는 배열의 가운데 수 # 가운데 수를 기준으로 몇개의 수를 넣어야할지 3. 그 외 고려사항 # 짝수일 때는 배열의 가운데 수 2개 중 더 작은 수가 구해짐 처음에 2로 나눈 나머지를 통해 홀수인지 짝수인지 판별, 홀수라면 중간값을 기준으로 num//2을 뺀 부분에서 더한 부분 +1까지, 짝수라면 중간값이 2개 중 왼쪽 수 이므로 시작 부분에 1을 더해준다 if num % 2 ==.. 2023. 5. 4.
[알고리즘] 프로그래머스 - 부족한 금액 계산하기 부족한 금액 계산하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 구해야 하는 것 # 금액이 얼마나 모자란지 (아니면 0 반환) 2. 1을 구하기 위해 필요한 것 # 놀이기구를 count번 탔을 때 비용의 합 # for i in range(1, count+1) # cost에 i*price를 계속 더해주기 # money에서 cost를 뺀다 1부터 count까지 i와 price를 곱해 해당 회차의 가격을 구하고, 구한 가격을 모두 더해준다. 그 후 가진 돈에서 빼서 얼마가 모자란지 계산, 부족한지 여부에 따라 0또는 answer를 리턴 def solu.. 2023. 5. 4.
[알고리즘] 프로그래머스 - 약수의 개수와 덧셈 약수의 개수와 덧셈 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 구해야 하는 것 # l부터 r까지 (약수의 개수가 짝수인 수의 합) - (약수의 개수가 홀수인 수의 합) # for i in range) 2. 1을 구하기 위해 필요한 것 # 약수의 개수가 짝수인지 홀수인지 판별 # 해당 수의 약수의 개수 # for문으로 a%b == 0인 약수 개수를 세기? # 약수의 개수를 저장한 자료형 # 1. 딕셔너리? # 2. cnt = 0? # if 약수의 개수 % 2 == 0: 짝수 # else: 홀수 3. 그 외 고려사항 # 약수의 개수는 기본적으로 1:.. 2023. 5. 4.