QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#420805 | #67. Two Transportations | YuJiahe | Compile Error | / | / | C++20 | 2.9kb | 2024-05-24 22:13:55 | 2024-05-24 22:13:55 |
Judging History
Azer
#include "Azer.h"
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <vector>
#include <queue>
using namespace std;
typedef vector<int> vi;
const int N = 2005, L1 = 11, L2 = 9;
int cnt;
namespace Azer{bool vis[N];
int n, U, dis[N], e[N][N], Ls, Lr = L2, cr, xr, lst, cn, ttp;
void Send(int x){if ((cnt += x) > 58000) exit(1);
for (int i = 0;i < Ls;i ++) SendA(x >> i & 1);
}
void update(int u){cn ++;
for (int v = 1;v <= n;v ++) if (e[u][v])
dis[v] = min(dis[v], dis[u] + e[u][v]);vis[u] = 1;
}
void senddis(){if (cn == n) return;U = 0, Ls = L2;
for (int i = 1;i <= n;i ++)
if (!vis[i] && (!U || dis[i] < dis[U])) U = i;
Send(dis[U]);
}
void sendnod(){Ls = L1, Send(U);}
void recvdis(int x){
if (dis[U] <= x) ttp = -1, update(U), sendnod(), senddis();
else Lr = L1, ttp = x;
}
void recvnod(int u){if (ttp != -1) dis[u] = ttp;update(u), Lr = L2, senddis();}
void ReceiveA(bool x){
xr |= x << cr, cr ++;
if (cr == Lr){int tp = xr;
if (Lr == L2){xr = cr = 0, recvdis(tp);return;}
if (Lr == L1){xr = cr = 0, recvnod(tp);return;}
}
}
void InitA(int nn, int m, vi uu, vi vv, vi ww){
memset(dis, 0x3f, sizeof(dis)), dis[1] = 0;
for (int i = 0;i < m;i ++){
int u = uu[i] + 1, v = vv[i] + 1;
e[u][v] = e[v][u] = ww[i];
}n = nn, senddis();
}
vi Answer(){return vi(dis + 1, dis + n + 1);}
}
void InitA(int nn, int m, vi uu, vi vv, vi ww){Azer::InitA(nn, m, uu, vv, ww);}
void ReceiveA(bool x){Azer::ReceiveA(x);}
vi Answer(){return Azer::Answer();}
Baijan
#include "Baijan.h"
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <vector>
#include <queue>
const int N = 2005, L1 = 11, L2 = 9;
int cnt;
namespace Baijan{bool vis[N];
int n, U, dis[N], e[N][N], Ls, Lr = L2, cr, xr, lst, ttp;
void Send(int x){if ((cnt += x) > 58000) exit(1);
for (int i = 0;i < Ls;i ++) SendB(x >> i & 1);
}
void update(int u){
for (int v = 1;v <= n;v ++) if (e[u][v])
dis[v] = min(dis[v], dis[u] + e[u][v]);vis[u] = 1;
}
void senddis(){U = 0, Ls = L2;
for (int i = 1;i <= n;i ++)
if (!vis[i] && (!U || dis[i] < dis[U])) U = i;
Send(dis[U]);
}
void sendnod(){Ls = L1, Send(U);}
void recvdis(int x){senddis();
if (dis[U] < x) ttp = -1, update(U), sendnod();
else Lr = L1, ttp = x;
}
void recvnod(int u){if (ttp != -1) dis[u] = ttp;update(u), Lr = L2;}
void ReceiveB(bool x){
xr |= x << cr, cr ++;
if (cr == Lr){int tp = xr;
if (Lr == L2){xr = cr = 0, recvdis(tp);return;}
if (Lr == L1){xr = cr = 0, recvnod(tp);return;}
}
}
void InitB(int nn, int m, vi uu, vi vv, vi ww){
memset(dis, 0x3f, sizeof(dis)), dis[1] = 0;
for (int i = 0;i < m;i ++){
int u = uu[i] + 1, v = vv[i] + 1;
e[u][v] = e[v][u] = ww[i];
}n = nn;
}
}
void InitB(int nn, int m, vi uu, vi vv, vi ww){Baijan::InitB(nn, m, uu, vv, ww);}
void ReceiveB(bool x){Baijan::ReceiveB(x);}
Details
Baijan.code: In function ‘void Baijan::update(int)’: Baijan.code:16:12: error: ‘min’ was not declared in this scope 16 | dis[v] = min(dis[v], dis[u] + e[u][v]);vis[u] = 1; | ^~~ Baijan.code:16:12: note: suggested alternatives: In file included from /usr/include/c++/10/vector:62, from Baijan.h:1, from Baijan.code:1: /usr/include/c++/10/bits/stl_algo.h:3479:5: note: ‘std::min’ 3479 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ In file included from /usr/include/c++/10/algorithm:64, from Baijan.code:2: /usr/include/c++/10/bits/ranges_algo.h:3165:29: note: ‘std::ranges::min’ 3165 | inline constexpr __min_fn min{}; | ^~~ Baijan.code: At global scope: Baijan.code:36:28: error: ‘vi’ has not been declared 36 | void InitB(int nn, int m, vi uu, vi vv, vi ww){ | ^~ Baijan.code:36:35: error: ‘vi’ has not been declared 36 | void InitB(int nn, int m, vi uu, vi vv, vi ww){ | ^~ Baijan.code:36:42: error: ‘vi’ has not been declared 36 | void InitB(int nn, int m, vi uu, vi vv, vi ww){ | ^~ Baijan.code: In function ‘void Baijan::InitB(int, int, int, int, int)’: Baijan.code:39:14: error: invalid types ‘int[int]’ for array subscript 39 | int u = uu[i] + 1, v = vv[i] + 1; | ^ Baijan.code:40:9: error: ‘v’ was not declared in this scope 40 | e[u][v] = e[v][u] = ww[i]; | ^ Baijan.code:40:26: error: invalid types ‘int[int]’ for array subscript 40 | e[u][v] = e[v][u] = ww[i]; | ^ Baijan.code: At global scope: Baijan.code:44:27: error: ‘vi’ has not been declared 44 | void InitB(int nn, int m, vi uu, vi vv, vi ww){Baijan::InitB(nn, m, uu, vv, ww);} | ^~ Baijan.code:44:34: error: ‘vi’ has not been declared 44 | void InitB(int nn, int m, vi uu, vi vv, vi ww){Baijan::InitB(nn, m, uu, vv, ww);} | ^~ Baijan.code:44:41: error: ‘vi’ has not been declared 44 | void InitB(int nn, int m, vi uu, vi vv, vi ww){Baijan::InitB(nn, m, uu, vv, ww);} | ^~