목록전체 글 (86)
Hikenny25
https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net - 분할정복법 import sys input = sys.stdin.readline def divide(arr): l = len(arr) // 2 divided_array = [] for i in [0,l]: for j in [0,l]: divided_array.append([row[j:j+l] for row in arr[i:i+l]]) for i in range(4): ..
실딱이를 드디어 벗어났습니다 왕ㅋ + 아니 근데 스트릭 왜 반영 시간이 오전 6시야... 그제 새벽에 제출해서 어제 문제 푼걸로 처리된 줄 알았는데;; 반영 시간이 자정이 아니라 스트릭 끊김..... 쨌든 512일 하면 새싹9단계 뱃지 받을 수 있다네여 도전!
https://www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주 www.acmicpc.net - 그래프 탐색 import sys input = sys.stdin.readline class Graph: def __init__(self, size): self.size = size self.matrix = [[0] * size for _ in range(size)] self.visited = [False] * size def add..
https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net - 그래프 탐색 import sys input = sys.stdin.readline def search(x,y): global amount_value if x = n or y >= n: return if matrix[x][y] == '1': amount_value += 1 matrix[x][y] = '0' search(x+1,y) search(x-1,y) searc..
https://www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net - 그래프 탐색 import sys input = sys.stdin.readline def search(x): if path_v: visited[x] = True path_v.append(x) for i in range(n): if visited[i] == False and matrix[x][i] == 1: search(i) n = int(input()) matrix = list() for _ in range(n): matrix.appen..
https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net - 힙 import sys input = sys.stdin.readline from heapq import heappush, heappop heap = [] for _ in range(int(input())): cmd = int(input()) if cmd: heappush(heap, (abs(cmd),cmd)) else: if heap: print(heappop(heap)[..
https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net - 최대 힙 import sys input = sys.stdin.readline from heapq import heappop, heappush heap = [] n = int(input()) for _ in range(n): cmd = -(int(input())) if cmd: heappush(heap, cmd) else: if heap: print(-heappop(heap)..
https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net - 최소 힙 import sys input = sys.stdin.readline class minHeap: def __init__(self): self.heap = [] def insert(self, n): self.heap.append(n) index = len(self.heap)-1 while index>0: p_index = (index - 1) // 2 if self.h..
https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net - DFS import sys sys.setrecursionlimit(int(1e9)) input = sys.stdin.readline def dfs(dy, dx): if dy = m: return if matrix[dy][dx]: matrix[dy][dx] = 0 dfs(dy+1,dx) dfs(dy-1,dx) dfs(dy,dx+1) dfs(dy,dx-1) else: return t = int(input())..
https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net - Greedy import sys input = sys.stdin.readline n = int(input()) meetTime = list() for _ in range(n): meetTime.append(list(map(int, input().split()))) meetTime.sort(key=lambda x:(x[1],x[0])) lastTime, cnt = meetTime[0][1], 1 for i in range(1, n): if lastTime