Submission #120426

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
1204262019-06-24 12:46:22tinderPort Facility (JOI17_port_facility)C++14
78 / 100
6132 ms996388 KiB
#include <bits/stdc++.h>
using namespace std;
using ii = pair<int, int>;
#define x first
#define id second
using info = pair<int, int>;
const int maxn = 2e6 + 6;
const int mod = 1e9 + 7;
int n, s[maxn], t[maxn];
namespace graph {
vector<int> g[maxn], w[maxn];
void add_edge(int u, int v, int col) {
w[u].emplace_back(col);
w[v].emplace_back(col);
g[u].emplace_back(v);
g[v].emplace_back(u);
}
} using namespace graph;
namespace merge_sort_tree {
vector<info> ft[maxn << 2];
int ptr[maxn << 2];
int i, j, k, id;
info data;
// insert(t, {s, id})
void insert(int u = 1, int l = 1, int r = 2 * n) {
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

port_facility.cpp: In function 'void merge_sort_tree::insert(int, int, int)':
port_facility.cpp:33:13: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   int m = l + r >> 1;
           ~~^~~
port_facility.cpp: In function 'void merge_sort_tree::update(int, int, int)':
port_facility.cpp:45:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    while(ptr[u] < ft[u].size() and ft[u][ptr[u]].x <= k) ptr[u]++;
          ~~~~~~~^~~~~~~~~~~~~~
port_facility.cpp:48:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   } int m = l + r >> 1;
             ~~^~~
port_facility.cpp: In function 'void merge_sort_tree::build(int, int, int)':
port_facility.cpp:61:13: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   int m = l + r >> 1;
           ~~^~~
port_facility.cpp: In function 'void dfs(int)':
port_facility.cpp:72:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i = 0; i < g[u].size(); i++) {
                 ~~^~~~~~~~~~~~~
port_facility.cpp: In function 'int main(int, const char**)':
port_facility.cpp:105:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &n);
  ~~~~~^~~~~~~~~~
port_facility.cpp:108:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d", &s[i], &t[i]);
   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...