Submission #788613

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
7886132023-07-20 12:14:53WLZToll (BOI17_toll)C++17
100 / 100
110 ms16580 KiB
#include <bits/stdc++.h>
using namespace std;
typedef pair<int, int> ii;
const int INF = 1e9;
template<typename T> inline istream& operator>>(istream &i, vector<T>& v) {
for (int j = 0; j < (int) v.size(); j++) i >> v[j];
return i;
}
template<typename T> inline ostream& operator<<(ostream &o, const vector<T>& v) {
for (int i = 0; i < (int) v.size(); i++) o << v[i] << ' ';
o << '\n';
return o;
}
struct node {
vector<vector<int>> mat;
node* left, *right;
int i, j;
};
vector<vector<int>> combine(const vector<vector<int>>& mat1, const vector<vector<int>>& mat2) {
if ((int) mat1.size() == 0) return mat2;
if ((int) mat2.size() == 0) return mat1;
int V = (int) mat1.size();
vector<vector<int>> newMat(V, vector<int>(V, INF));
for (int k = 0; k < V; k++) {
for (int i = 0; i < V; i++) {
for (int j = 0; j < V; j++) {
newMat[i][j] = min(newMat[i][j], mat1[i][k] + mat2[k][j]);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

toll.cpp: In function 'std::vector<std::vector<int> > combine(const std::vector<std::vector<int> >&, const std::vector<std::vector<int> >&)':
toll.cpp:34:13: warning: moving a local object in a return statement prevents copy elision [-Wpessimizing-move]
   34 |  return move(newMat);
      |         ~~~~^~~~~~~~
toll.cpp:34:13: note: remove 'std::move' call
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...