Algorithm(116)
-
[프로그래머스 LEVEL2 : 영어 끝말잇기][python]
https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(n, words): # 끝말잇기 시작 상태 answer = [1, 1] before_words = [words[0]] # n번째 단어 제시 후 다시 처음으로 순서가 돌아오므로, answer[1] 1 증가 for i in range(1, len(words)): if i % n == 0: answer[1] +=1 # 처음 순서로 돌아오는 지 확인 후 1 증가(1부터 시작하므로)..
2023.03.13 -
[프로그래머스 LEVEL1 : 콜라 문제][python]
https://school.programmers.co.kr/learn/courses/30/lessons/132267 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(a, b, n): answer = 0 remainder = 0 while (n >= a): quotient = n // a answer += quotient * b remainder = n % a n = quotient * b + remainder return answer - 아이디어 0. n이 a보다 작은 경우 교환 자체가 불가능 1. 빈 병 a개당 b개의 콜라를 교환 ..
2023.03.08 -
[프로그래머스 LEVEL1 : 크기가 작은 부분 문자열][python]
https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(t, p): answer = 0 step = len(p) for i in range(0, len(t)-step+1): if int(t[i:i+step])
2023.03.07 -
[Python/solved.ac] 11659번 : 구간 합 구하기 4
https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net import sys n, m = map(int, input().split()) nums = list(map(int, sys.stdin.readline().rstrip().split())) # 0~1 번째 까지의 누적을 처리 하기 위해 맨 앞에 0 삽입 nums.insert(0,0) # k 번째의 누적 합 저장 for i in range(1,len(nums)): nums[i]..
2022.09.06 -
[Python/solved.ac] 9461번 : 파도반 수열
https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net import sys T = int(input()) arr = [0 for _ in range(100)] arr[0] = 1 arr[1] = 1 arr[2] = 1 arr[3] = 2 arr[4] = 2 arr[5] = 3 arr[6] = 4 arr[7] = 5 arr[8] = 7 arr[9] = 9 # 규칙성 메모이제이션 for i in range(10,100): arr[i] = arr[i-1] + a..
2022.09.05 -
[Python/solved.ac] 9375번 : 패션왕 신해빈
https://www.acmicpc.net/problem/9375 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net import sys from collections import defaultdict n = int(input()) for _ in range(n): # 의상 카테고리 별로 분류 하기위한 리스트를 디폴트로 가지는 딕셔너리 closet = defaultdict(list) # 의상 종류 num = int(inp..
2022.09.03