#include "Annalib.h"
#include<bits/stdc++.h>
using namespace std;
#define task "a"
#define se second
#define fi first
#define ll long long
#define ii pair<int, int>
static const long mxN = 3e2 + 7;
static const ll inf = 4e18 + 7;
static vector<int> ans[10];
static ll mn[mxN][mxN], cost[mxN][10];
void Anna(int n, int m, int a[], int b[], ll c[], int q, int s[], int t[], int k, int u[])
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
mn[i][j] = inf;
mn[i][i] = 0;
}
for (int i = 0; i < m; i++)
mn[a[i]][b[i]] = c[i];
for (int i = 0; i < k; i++)
mn[a[i]][b[i]] = inf;
// Floyd tim min dis
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
for (int u = 0; u < n; u++)
mn[j][u] = min(mn[j][u], mn[j][i] + mn[i][u]);
}
}
// cost[i][j] truy van s[i] -> t[i] di qua canh u[j]
for (int i = 0; i < q; i++)
{
for (int j = 0; j < k; j++)
cost[i][j] = mn[s[i]][a[u[j]]] + mn[b[u[j]]][t[i]];
cost[i][k] = mn[s[i]][t[i]];
ans[0].push_back(i);
}
vector<ii> mem;
for (int i = 1; i <= k; i++)
{
ll tmp = 0;
if (i < k)
tmp = c[u[i]];
vector<int> rem;
for (int j = 0; j < i; j++)
{
for (int v : ans[j])
{
if (cost[v][j] + c[u[j]] < cost[v][i] + tmp)
rem.push_back(v);
else
ans[i].push_back(v);
}
mem.push_back({ans[j].size(), rem.size()});
ans[j] = rem;
}
}
reverse(mem.begin(), mem.end());
ll mask = 0;
for (ii i : mem)
mask = mask * (i.fi + 1) + i.se;
while (mask)
{
Tap(mask & 1);
mask /= 2;
}
}
#include "Brunolib.h"
static int SampleFunction() {
return 0;
}
static int SampleVariable;
void Bruno(int N, int M, int A[], int B[], long long C[], int Q, int S[], int T[], int K, int U[], int L, int X[]) {
Answer(4);
Answer(-1);
Answer(2);
Answer(-1);
Answer(1);
Answer(0);
Answer(-1);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |