Submission #120443

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
1204432019-06-24 13:36:17tinderPort Facility (JOI17_port_facility)C++14
78 / 100
6078 ms904004 KiB
#pragma GCC optimize("Ofast,unroll-loops")
#include <bits/stdc++.h>
using namespace std;
using ii = pair<int, int>;
using info = pair<int, int>;
#define x first
#define id second
#define v first
#define w second
const int maxn = 2e6 + 6;
const int mod = 1e9 + 7;
int n, s[maxn], t[maxn];
namespace graph {
vector<ii> g[maxn];
void add_edge(int u, int v, int w) {
g[u].emplace_back(v, w);
g[v].emplace_back(u, w);
}
} using namespace graph;
namespace merge_sort_tree {
vector<info> ft[maxn << 2];
int ptr[maxn << 2];
// insert(t, {s, id})
void insert(int &i, info &j, int u = 1, int l = 1, int r = 2 * n) {
ft[u].emplace_back(j);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

port_facility.cpp: In function 'void merge_sort_tree::insert(int&, info&, int, int, int)':
port_facility.cpp:32: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&, int&, int, int, int)':
port_facility.cpp:40: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:43: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:52:13: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   int m = l + r >> 1;
           ~~^~~
port_facility.cpp: In function 'int main(int, const char**)':
port_facility.cpp:112:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &n);
  ~~~~~^~~~~~~~~~
port_facility.cpp:115: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...