전체 글

개발..해볼까?
코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 5568번 : 카드 놓기

https://www.acmicpc.net/problem/5568 5568번: 카드 놓기 예제 1의 경우 상근이는 11, 12, 21, 112, 121, 122, 212를 만들 수 있다. www.acmicpc.net 내 코드 from itertools import permutations import sys input = sys.stdin.readline n = int(input()) k =int(input()) nlist =[] for i in range(n): nlist.append(input().rstrip()) s = set() for per in permutations(nlist, k): s.add(''.join(map(str, per))) print(len(s)) permutations, 순열 ..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 10974번 : 모든 순열

https://www.acmicpc.net/problem/10974 10974번: 모든 순열 N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오. www.acmicpc.net 내 코드 import sys input = sys.stdin.readline n = int(input()) nlist=[] tmp =[] for i in range(1, n+1): nlist.append(i) def dfs(v): if n == len(tmp): print(' '.join(map(str, tmp))) return for i in range(1, n+1): if i not in tmp: tmp.append(i) dfs(i) tmp.pop() dfs(nlist[0]) DFS..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 2178번 : 미로탐색

https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 내 코드 from collections import deque import sys input = sys.stdin.readline n, m = map(int, input().split())#n개의 세로, m개의 가로 board = [list(map(int, input().rstrip())) for _ in range(n)] dx = [0,0,1,-1] dy = [1,-1,0,0] q=deque() q.append([0,0]) c..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 1012번 : 유기농 배추

https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 내 코드 import sys input = sys.stdin.readline sys.setrecursionlimit(10000) t = int(input()) dx = [1,-1,0,0] dy = [0,0,1, -1] def dfs(x, y): if x=m or y=n: return if board[x][y]: board[x][y]=False for i in range(4): nx = x+dx[i] ny = ..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 2667번 : 단지번호붙이기

https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net 내 코드 import sys input = sys.stdin.readline n = int(input()) dx = [1,-1,0,0] dy = [0,0,1,-1] cnt =0 board =[list(map(int,input().rstrip())) for _ in range(n)] visited = []*(n+1) ans = [] result =0 def dfs(x, y): if x =n or y=..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 2606번 : 바이러스

https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 내 코드 import sys input = sys.stdin.readline n = int(input()) m = int(input()) com = [[] for i in range(n+1)] visited =[0]*(n+1) start =0 ans =[] for i in range(m): a,b = map(int, input().split()) com[a].append(b) com[b].append(..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 1260번 : DFS와 BFS

https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 내 코드 import sys from collections import deque input = sys.stdin.readline n, m , v = map(int, input().split()) board =[[False]*(n+1) for _ in range(n+1)] visited1 = [False]*(n+1) visited2= [False]*(n+1) ..

코딩테스트 대비/백준(BOJ)

[Python][백준/BOJ] 15666번 : N과 M (12)

https://www.acmicpc.net/problem/15666 15666번: N과 M (12) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 내 코드 import sys input = sys.stdin.readline n, m = map(int, input().split()) num = sorted(list(map(int, input().split()))) tmp =[] def dfs(start): if len(tmp) == m: print(' '.join(map(str, tmp))) return prev =0 for i in ra..

bee22
beeee