일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- popup
- 파이썬
- Chrome Extension
- 공부시간측정어플
- 프로그래머스 #정수삼각형 #동적계획법
- 캠스터디
- 포도주시식
- 백준 #7568번 #파이썬 #동적계획법
- 갓생
- supabase
- TypeScript
- content script
- webpack
- react
- 동적계획법
- 자료구조
- nodejs
- 백준 7579
- C언어로 쉽게 풀어쓴 자료구조
- 크롬 익스텐션
- 디스코드 봇
- 크롬 확장자
- Message Passing
- discord.js
- background script
- 백준
- X
- 2156
- Today
- Total
목록알고리즘 스터디 (37)
히치키치

문제 www.acmicpc.net/problem/11559 11559번: Puyo Puyo 총 12개의 줄에 필드의 정보가 주어지며, 각 줄에는 6개의 문자가 있다. 이때 .은 빈공간이고 .이 아닌것은 각각의 색깔의 뿌요를 나타낸다. R은 빨강, G는 초록, B는 파랑, P는 보라, Y는 노랑이다. www.acmicpc.net 풀이 DFS : 같은 색 & 이어진 뿌요 탐색 que : 현재 위치 중심으로 사라질 뿌요 탐색 set : 색깔 상관없이 사라질 모든 뿌요 집합 (=DFS에서 조건 만족한 모든 뿌요) 뿌요 내리기 : 밑에서부터 시작 / 위에 뿌요 있으면 . 과 바꿔주기 While : flag 켜져 있으면 연쇄 횟수 증가, flag 꺼지면 반복문 탈출 코드 #문제 https://www.acmicpc...

문제 www.acmicpc.net/problem/14002 14002번: 가장 긴 증가하는 부분 수열 4 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 풀이 동적 계획법 길이 : 일차원 배열에 당시 길이 최대값 유지/갱신 : 이전 수+1 수열 출력 : 배열에 최대값 가진 인덱스부터 -1 하며 원래 수열에서 해당 값 가져오기 코드 n = int(input()) arr = list(map(int, input().split())) max_len = [1]*n for i in ra..

문제 www.acmicpc.net/problem/10830 10830번: 행렬 제곱 크기가 N*N인 행렬 A가 주어진다. 이때, A의 B제곱을 구하는 프로그램을 작성하시오. 수가 매우 커질 수 있으니, A^B의 각 원소를 1,000으로 나눈 나머지를 출력한다. www.acmicpc.net 빠른 거듭제곱 계산 풀이 분할 정복 & 재귀 빠른 거듭제곱 계산 거듭제곱 나누기 -> 행렬 계산 : 재귀적으로 구현 코드 #문제: https://www.acmicpc.net/problem/10830 def multi_mat(n,m1,m2): result=[[0 for _ in range(n)] for _ in range(n)] #계산 결과 담는 행렬 for i in range(n): for j in range(n): f..

www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 풀이 코드 weight = int(input()) total = 0 while True: if (weight % 5) == 0: total =total + (weight//5) print(total) break weight = weight-3 total =total+ 1 if weight < 0: print("-1") break