목록코테/백준 (5)
공부기록
문제 https://www.acmicpc.net/problem/3665 코드 더보기 #include #include #include using namespace std; int N,M; bool g[501][501]; bool visit[501]; int count[501]; vector updated_rank; queue q; void process_g(vector &prev_rank){ for(int i=0; i M; for(int i=0; i> sp >> ep; updated_rank.push_back(vector{sp, ep}); } process_g(prev_rank); update_g(); bool isAmbigious = false; vector cur_rank; while(true){ fo..
문제 https://www.acmicpc.net/problem/17135 17135번: 캐슬 디펜스 첫째 줄에 격자판 행의 수 N, 열의 수 M, 궁수의 공격 거리 제한 D가 주어진다. 둘째 줄부터 N개의 줄에는 격자판의 상태가 주어진다. 0은 빈 칸, 1은 적이 있는 칸이다. www.acmicpc.net 코드 더보기 #include #include #include #include #include using namespace std; int N, M, D; bool arr[15][15]; bool check[15]; int max_val = 0; bool isWin(bool myArr[15][15]){ for(int i=0; i
문제 https://www.acmicpc.net/problem/1007 1007번: 벡터 매칭 평면 상에 N개의 점이 찍혀있고, 그 점을 집합 P라고 하자. 집합 P의 벡터 매칭은 벡터의 집합인데, 모든 벡터는 집합 P의 한 점에서 시작해서, 또 다른 점에서 끝나는 벡터의 집합이다. 또, P에 속 www.acmicpc.net 코드 더보기 #include #include #include using namespace std; bool his[20]; int N; long double res = 400020; vector points; void dfs(int cur_idx, int left){ if(left == 0){ long double x_val = 0; long double y_val = 0; for(..
문제 https://www.acmicpc.net/problem/3687 3687번: 성냥개비 각 테스트 케이스에 대해서 입력으로 주어진 성냥개비를 모두 사용해서 만들 수 있는 가장 작은 수와 가장 큰 수를 출력한다. 두 숫자는 모두 양수이어야 하고, 숫자는 0으로 시작할 수 없다. www.acmicpc.net 코드 더보기 #include #include #include #include using namespace std; string max_val; string min_val; unordered_map minMap; unordered_map maxMap; unordered_map amount_values; void init(){ amount_values[2] = vector{'1'}; amount_val..
문제 www.acmicpc.net/problem/19238 19238번: 스타트 택시 첫 줄에 N, M, 그리고 초기 연료의 양이 주어진다. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 연료 ≤ 500,000) 연료는 무한히 많이 담을 수 있기 때문에, 초기 연료의 양을 넘어서 충전될 수도 있다. 다 www.acmicpc.net 내 코드 더보기 #include #include #include #include #include using namespace std; vector m; unordered_map idx_dst; int N, M, O; int t_r, t_c; int mv[4][2] = { {-1,0}, {0,1}, {1,0}, {0,-1} }; void printMap(vector m..