From 8a2b918e229d16819f2ccb3d859646378f3e5f82 Mon Sep 17 00:00:00 2001 From: Frederick Chen Date: Fri, 14 Feb 2025 03:36:54 +0000 Subject: [PATCH] New: total 1 --- ...er.cpp_08995cbbcc32c95b03ce321a2fe4b455.prob | 1 + fame | 18 ++++ 「USACO3.2」Sweet Butter.cpp | 84 +++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 .cph/.「USACO3.2」Sweet Butter.cpp_08995cbbcc32c95b03ce321a2fe4b455.prob create mode 100644 fame create mode 100644 「USACO3.2」Sweet Butter.cpp diff --git a/.cph/.「USACO3.2」Sweet Butter.cpp_08995cbbcc32c95b03ce321a2fe4b455.prob b/.cph/.「USACO3.2」Sweet Butter.cpp_08995cbbcc32c95b03ce321a2fe4b455.prob new file mode 100644 index 0000000..04fe79e --- /dev/null +++ b/.cph/.「USACO3.2」Sweet Butter.cpp_08995cbbcc32c95b03ce321a2fe4b455.prob @@ -0,0 +1 @@ +{"name":"Local: 「USACO3","url":"/workspaces/OI-Codes/「USACO3.2」Sweet Butter.cpp","tests":[{"id":1739503655378,"input":"3 4 5\n2\n3\n4\n1 2 1\n1 3 5\n2 3 7\n2 4 3\n3 4 5","output":"8"}],"interactive":false,"memoryLimit":1024,"timeLimit":3000,"srcPath":"/workspaces/OI-Codes/「USACO3.2」Sweet Butter.cpp","group":"local","local":true} \ No newline at end of file diff --git a/fame b/fame new file mode 100644 index 0000000..59479f9 --- /dev/null +++ b/fame @@ -0,0 +1,18 @@ +#include +#define lo long long +#define INF INT_MAX +#define LLM LONG_LONG_MAX + +using namespace std; +const int N = 1e7 + 10; +/* + toothless. #17 + @fredcss_dev +*/ + +signed main() +{ + + return 0; +} + diff --git a/「USACO3.2」Sweet Butter.cpp b/「USACO3.2」Sweet Butter.cpp new file mode 100644 index 0000000..42430f1 --- /dev/null +++ b/「USACO3.2」Sweet Butter.cpp @@ -0,0 +1,84 @@ +#include +#define lo long long +#define INF INT_MAX +#define LLM LONG_LONG_MAX + +using namespace std; +const int N = 1e7 + 10; +/* + toothless. #17 + @fredcss_dev +*/ + +int n; +int p; +int c; +int mp[800][805]; +int d[805][805]; +int mark[805]; +const int inf = 9999999; +int res = inf; + +signed main() +{ + cin >> n >> p >> c; + for (int i = 0; i < p; i++) + { + for (int j = 0; j < p; j++) + { + if (i == j) + { + mp[i][j] = 0; + d[i][j] = 0; + } + else + { + mp[i][j] = inf; + d[i][j] = inf; + } + } + } + for (int i = 0; i < n; i++) + { + int t; + scanf("%d", &t); + mark[t - 1]++; + } + for (int i = 0; i < c; i++) + { + int u; + int v; + int val; + scanf("%d%d%d", &u, &v, &val); + mp[u - 1][v - 1] = val; + mp[v - 1][u - 1] = val; + d[u - 1][v - 1] = val; + d[v - 1][u - 1] = val; + } + for (int k = 0; k < p; k++) + { + for (int i = 0; i < p; i++) + { + for (int j = 0; j < i; j++) + { + if (d[i][j] > d[i][k] + d[k][j]) + { + d[i][j] = d[i][k] + d[k][j]; + d[j][i] = d[i][j]; + } + } + } + } + for (int i = 0; i < p; i++) + { + int sum = 0; + for (int j = 0; j < p; j++) + { + sum += d[i][j] * mark[j]; + } + if (res > sum) + res = sum; + } + printf("%d", res); + return 0; +} \ No newline at end of file