일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 파이썬
- 운영체제
- level1
- 브루트포스
- level2
- BFS
- 재귀
- level3
- 다이나믹 프로그래밍
- dfs
- level0
- 그리디
- 구현
- 다익스트라
- N과M
- 코딩테스트
- MYSQL
- 딕셔너리
- 에라스토테네스의 체
- 가상메모리
- 수학
- 가상메모리 관리
- 스택
- BOJ
- 백준
- 힙
- 프로그래머스
- programmers
- python
- DP
- Today
- Total
목록전체 글 (447)
동캄의 코딩도장
https://www.acmicpc.net/problem/11931#백준 11931 수 정렬하기import sysN=int(sys.stdin.readline())lst=[]for _ in range(N): lst.append(int(sys.stdin.readline()))lst.sort(reverse=True) for element in lst: print(element)
https://www.acmicpc.net/problem/3986#백준 3986 좋은 단어N=int(input())ans=0for _ in range(N): success_flg=True stack=[] lst=list(map(str,input())) for element in lst: if not stack: stack.append(element) else: if element==stack[-1]: stack.pop() else: stack.append(element) if not stack and success_flg: ans..
https://www.acmicpc.net/problem/11559 예전에 재밌게하던 게임인데, 문제로 만나게되니 반가웠다. 이 문제의 핵심은1) BFS로 탐색2) 터지는 조건을 만족하게 되면, 터지는 것을 고려하여 나머지요소들을 움직인다3) 안터질때까지 반복#백준 11559 puyo puyofrom collections import dequedr=[0,0,1,-1]dc=[1,-1,0,0]field=[]for _ in range(12): #필드 초기화 field.append(list(map(str,input())))def bfs(color,start_row,start_col,visit,burst,is_burst): # 컬러, 시작좌표(r,c), 방문배열, 터짐배열, 터졌는지 확인 플래그 q=..
https://www.acmicpc.net/problem/16987 # 백준 16987 계란으로 계란치기N=int(input())eggs=[]eggs_break=[False for _ in range(N)]ans=0for _ in range(N): #계란 정보 저장 dur,wei=map(int,input().split()) eggs.append([dur,wei])def strike_egg(curr,cnt): #현재 손에 쥐고 있는 계란 정보와 현재 깨진 계란 정보를 인자로 받음 global ans ans=max(ans,cnt) #가장 많이 깨진 경우 확인 if curr==N: #가장 오른쪽 계란까지 확인했다면 더이상 탐색하지 않음 return if not e..
https://www.acmicpc.net/problem/14889# 백준 14889 스타트와 링크from collections import dequeN=int(input())field=[]for _ in range(N): field.append(list(map(int,input().split()))) #전체 경우 저장visited=[0 for _ in range(N)]team=deque()ans=10**9 def team_match(curr): #팀에 인원을 추가하여, 팀을 두개로 분리하여(방문한 팀 vs 방문안한 팀) 차이 비교 global ans if len(team)==N//2: team_ano=deque() for i in range(N): ..
https://www.acmicpc.net/problem/14888 # 백준 14888 연산자 끼워넣기N=int(input()) #총 숫자 갯수numbers=list(map(int,input().split())) #숫자 배열 저장opers=list(map(int,input().split())) #연산자 배열 저장max_ans=-10**9-1 #최댓값 저장min_ans=10**9+1 #최솟값 저장def calcul(val,cnt): global max_ans global min_ans if cnt==N: #연산자 배치가 완료되면 if val>max_ans: max_ans=val if val