목록백준, 프로그래머스(파이썬) (22)
내 잡다한 노트
문제) https://www.acmicpc.net/problem/16724 16724번: 피리 부는 사나이 첫 번째 줄에 지도의 행의 수를 나타내는 N(1 ≤ N ≤ 1,000)과 지도의 열의 수를 나타내는 M(1 ≤ M ≤ 1,000)이 주어진다. 두 번째 줄부터 N개의 줄에 지도의 정보를 나타내는 길이가 M인 문자열이 주 www.acmicpc.net 소스코드) import sys sys.setrecursionlimit(10**8) n, m = map(int, input().split()) dirmap = [sys.stdin.readline().rstrip() for _ in range(n)] #print(dirmap) visited = [[False] * m for _ in range(n)] fini..
문제 ) https://www.acmicpc.net/problem/6064 6064번: 카잉 달력 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성된다. www.acmicpc.net 쉽다고 생각했는데 한참을 애먹은 문제... 시간제한은 1초인데 m, n은 4만까지 있고 그거마저도 test_case가 여러개가 있어서 브루트포스로 하면 1초만에 못한다고 생각을 했는데 가능하더라....ㅋ;; 내 힘으로 풀지 못해 다른 사이트의 코드를 참고했다. 소스코드 ) for _ in range(int(input())): m, n, x, y = map(int, input().split()..
문제) https://www.acmicpc.net/problem/10159 10159번: 저울 첫 줄에는 물건의 개수 N 이 주어지고, 둘째 줄에는 미리 측정된 물건 쌍의 개수 M이 주어진다. 단, 5 ≤ N ≤ 100 이고, 0 ≤ M ≤ 2,000이다. 다음 M개의 줄에 미리 측정된 비교 결과가 한 줄에 하나씩 www.acmicpc.net 처음부터 접근 방법이 잘못돼 한참을 헤매었다. bfs로 풀려고 했는데 나중에 보니 간선의 가중치가 다르더라... 그걸 너무 늦게 깨달았다. bfs, dfs는 간선의 가중치가 1로 다 같을 때 쓸 수 있는 것인데.... ㅠㅠ 소스코드) n = int(input()) m = int(input()) dp = [[inf] * (n+1) for _ in range(n+1)]..
문제 https://www.acmicpc.net/problem/2294 2294번: 동전 2 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 가치가 같은 동전이 여러 번 주 www.acmicpc.net 소스코드 import sys n, k = map(int, sys.stdin.readline().split()) dp = [10001] * (k+1) dp[0] = 0 coin = [] for _ in range(n): coin.append(int(input())) for c in coin: for p in range(c, k+1): if p-c >= 0: dp[..
문제 : https://www.acmicpc.net/problem/6087 6087번: 레이저 통신 크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다. 'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 www.acmicpc.net 소스 코드 import sys from collections import deque W, H = map(int, sys.stdin.readline().split()) # H가 세로 mapp = [list(map(str, sys.stdin.readline().strip())) for _ in range(H)] dx = [0, 0, 1, -1] dy = [1, -1, 0, 0] st..
백준 아기상어 : https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 작성한 코드 import sys from collections import deque N = int(sys.stdin.readline().strip()) mapp = [list(map(int, sys.stdin.readline().split())) for _ in range(N)] dx = [0, 0, 1, -1] dy = [1, -1, 0, 0] def bfs(i, j,..