Submission #73645

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
736452018-08-28 16:15:18FLDutchmanIdeal city (IOI12_city)C++14
100 / 100
661 ms33192 KiB
#include <bits/stdc++.h>
using namespace std;
typedef int INT;
#define pb push_back
#define int long long
#define fst first
#define snd second
#define FOR(i,l,r) for(int i = (l); i < (r); i++)
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef pair<int,int> ii;
typedef vector<ii> vii;
struct edge{
int v, i;
};
int N;
vii points;
vvi adj;
map<ii, int> idx;
vvi rowgr, colgr;
vii ce, re;
vector<vector<edge>> rg, cg;
vi rowsz, colsz;
vi row, col;
vi vis;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

city.cpp: In function 'INT DistanceSum(INT, INT*, INT*)':
city.cpp:109:12: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   if(neigh = idx[{x+1, y}]) adj[i][0] = neigh-1;
city.cpp:110:12: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   if(neigh = idx[{x, y-1}]) adj[i][1] = neigh-1;
city.cpp:111:12: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   if(neigh = idx[{x-1, y}]) adj[i][2] = neigh-1;
city.cpp:112:12: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   if(neigh = idx[{x, y+1}]) adj[i][3] = neigh-1;
city.cpp:10:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define FOR(i,l,r) for(int i = (l); i < (r); i++)
                                       ^
city.cpp:148:2: note: in expansion of macro 'FOR'
  FOR(u, 0, rowgr.size()){
  ^~~
city.cpp:10:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define FOR(i,l,r) for(int i = (l); i < (r); i++)
                                       ^
city.cpp:149:3: note: in expansion of macro 'FOR'
   FOR(v, 0, rowgr[u].size()){
   ^~~
city.cpp:10:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define FOR(i,l,r) for(int i = (l); i < (r); i++)
                                       ^
city.cpp:156:2: note: in expansion of macro 'FOR'
  FOR(u, 0, colgr.size()){
  ^~~
city.cpp:10:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define FOR(i,l,r) for(int i = (l); i < (r); i++)
                                       ^
city.cpp:157:3: note: in expansion of macro 'FOR'
   FOR(v, 0, colgr[u].size()){
   ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...