본문 바로가기

백준

(497)
[백준 2591번] 숫자카드 (C++) 문제링크 : https://www.acmicpc.net/problem/2591 2591번: 숫자카드 1부터 34까지 수가 적힌 카드가 충분히 많이 있다. 이들 중 몇 장을 일렬로 늘어놓고, 그 숫자를 차례로 적었다. 예를 들어 아래와 같이 카드가 놓인 경우 숫자를 차례로 적으면 27123이 된다. 나중 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int dp[41]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); string s; cin >> s; dp[0]=1; //처음은 한개 for(int i=..
[백준 18126번] 너구리 구구 (C++) 문제링크 : https://www.acmicpc.net/problem/18126 18126번: 너구리 구구 텔레토비 동산에 사는 너구리 구구는 입구, 거실, 주방, 안방, 공부방, 운동실, 음악실, 음식 창고 등 N개의 방을 가지고 있다. 입구를 포함한 모든 방은 1부터 N까지의 번호가 있고, 입구는 1번이 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const ll MAX = 10000000001*5000; //최대값 + 1 int N, A, B; ll C, result; vectorv[5001]; ll dist[5001]; void bfs() { dist[1]=0; //시작점 queue q; ..
[백준 2194번] 유닛 이동시키기 (C++) 문제링크 : https://www.acmicpc.net/problem/2194 2194번: 유닛 이동시키기 첫째 줄에 다섯 개의 정수 N, M(1 ≤ N, M ≤ 500), A, B(1 ≤ A, B ≤ 10), K(0 ≤ K ≤ 100,000)가 주어진다. 다음 K개의 줄에는 장애물이 설치된 위치(행 번호, 열 번호)가 주어진다. 그 다음 줄에는 시작점의 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, M, A, B, K; int s1, s2, e1, e2; int dx[] = {1, -1, 0, 0}; int dy[] = {0, 0, 1,..
[백준 27966번] △ (C++) 문제링크 : https://www.acmicpc.net/problem/27966 27966번: △ $N$개의 정점으로 이루어진 트리의 모든 정점 쌍에 대하여, 두 정점 사이의 거리의 합을 최소화하시오. 정점에는 $1$부터 $N$까지 번호가 매겨져 있다. 즉, 정점 $i$와 정점 $j$ 사이의 거리를 $\textrm www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N; ll dp[100001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin >> N; dp[0]=1; for(int i=0; i
[백준 18404번] 현명한 나이트 (C++) 문제링크 : https://www.acmicpc.net/problem/18404 18404번: 현명한 나이트 첫째 줄에 N과 M이 공백을 기준으로 구분되어 자연수로 주어진다. (1 ≤ N ≤ 500, 1 ≤ M ≤ 1,000) 둘째 줄에 나이트의 위치 (X, Y)를 의미하는 X와 Y가 공백을 기준으로 구분되어 자연수로 주어진다. ( www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, M, X, Y, A, B; int dx[] = {-2,-2,-1,-1, 1,1, 2,2}; //나이트 이동 방향 int dy[] = {-1, 1,-2, 2,-2,2..
[백준 14675번] 단절점과 단절선 (C++) 문제링크 : https://www.acmicpc.net/problem/14675 14675번: 단절점과 단절선 프로그램의 입력은 표준 입력으로 받는다. 입력의 첫 줄에는 트리의 정점 개수 N이 주어진다. (2 ≤ N ≤ 100,000) 트리의 정점은 1번부터 n번까지 존재한다. 다음 줄부터 N-1개의 줄에 걸쳐 간선의 정 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, Q; vectorv[100001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin >> N; for(int i=0;..
[백준 1707번] 이분 그래프 (C++) 문제링크 : https://www.acmicpc.net/problem/1707 1707번: 이분 그래프 입력은 여러 개의 테스트 케이스로 구성되어 있는데, 첫째 줄에 테스트 케이스의 개수 K가 주어진다. 각 테스트 케이스의 첫째 줄에는 그래프의 정점의 개수 V와 간선의 개수 E가 빈 칸을 사이에 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int K, V, E; vectorv[20001]; int visited[20001]; bool flag; //인접색깔 체크용 void dfs(int cur) { if(!visited[cur]) visited[cu..
[백준 14267번] 회사 문화 1 (C++) 문제링크 : https://www.acmicpc.net/problem/14267 14267번: 회사 문화 1 영선회사에는 매우 좋은 문화가 있는데, 바로 상사가 직속 부하를 칭찬하면 그 부하가 부하의 직속 부하를 연쇄적으로 칭찬하는 내리 칭찬이 있다. 즉, 상사가 한 직속 부하를 칭찬하면 그 부하 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, M; vectorv[100001]; int cost[100001]; void dfs(int cur) { for(int i=0; i> N >> M; for(int i=1; i> n; v[n].push_..