본문 바로가기

전체 글105

[BOJ] 백준 14938번: 서강그라운드 모든 지점에서 다익스트라를 반복하여 최대값을 찾는 문제 #include #include #include #include #include #include #include using namespace std; typedef pair pii; typedef long long ll; vector v[101]; int dist[101]; int item[101]; int n, m, r; bool visit[101] = { 0, }; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); cin >> n >> m >> r; for (int i = 1; i > item[i]; } for (int i = 0; i < r; i++) { .. 2020. 6. 19.
[BOJ] 백준 11779번: 최소비용 구하기 2 #include #include #include #include #include #include #include using namespace std; typedef pair pii; typedef long long ll; vector v[1001]; int dist[1001]; int pre[1001]; int n, m; int s, e; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); cin >> n >> m; memset(pre, -1, sizeof(pre)); for (int i = 1; i > a >> b >> c; v[a].push_back({ b,c }); } cin >> s >> e; priority_.. 2020. 6. 19.
[BOJ] 백준 1238번: 파티 주어진 입력을 정방향, 역방향 2개의 벡터로 저장하여 파티가 열리는 노드를 시작으로 다익스트라를 2번 수행하여 오고 가는데 걸린 최단 경로 합의 최대를 출력하는 문제 #include #include #include #include #include #include using namespace std; typedef pair pii; typedef long long ll; vector v[10001]; vector v2[10001]; int dist[10001]; int dist2[10001]; int n, m, x; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); cin >> n >> m >> x; for (int .. 2020. 6. 19.
[BOJ]백준 1167번: 트리의 지름 1번 정점을 루트로 가정하고 dp[i]를 i번째 정점을 서브 트리의 루트로 가정했을때 가장 긴 지름을 저장함 #include #include #include #include #include #include using namespace std; typedef pair pii; typedef long long ll; int n; vector v[100001]; int dp[100001]; // i 를 루트로 했을때 지름 길이 int recv(int node, int p) { int& ret = dp[node]; if (~ret) return ret; ret = 0; int _max1 = 0, _max2 = 0; for (auto nxt : v[node]) { int _node = nxt.first; int .. 2020. 6. 19.