Submission #131531

#TimeUsernameProblemLanguageResultExecution timeMemory
131531SirCenessMeetings (JOI19_meetings)C++14
29 / 100
3038 ms1092 KiB
#include "meetings.h" #include <bits/stdc++.h> using namespace std; #define ll long long; #define mod 1000000007 #define mp make_pair #define pb push_back #define bas(x) #x << ": " << x #define prarr(x, n) cout << #x << ": "; for (int qsd = 0; qsd < n; qsd++) cout << x[qsd] << " "; cout << endl; #define prarrv(x) cout << #x << ": "; for (int qsd = 0; qsd < (int)x.size(); qsd++) cout << x[qsd] << " "; cout << endl; #define inside sl<=l%&&r<=sr #define outside sr<l||r<sl void get(int root, vector<int>& arr){ //cout << "get(" << root << ")" << endl; //prarrv(arr); if (arr.size() == 0) return; else if (arr.size() == 1){ Bridge(min(root, arr[0]), max(root, arr[0])); return; } int ch = arr[rand()%arr.size()]; vector<int> alt; vector<int> ust; vector<int> dig; ust.pb(ch); for (int i = 0; i < arr.size(); i++){ //cout << "query(" << root << ", " << ch << ", " << arr[i] << ")" << endl; if (ch == arr[i]) continue; int ans = Query(root, ch, arr[i]); if (ans == ch){ alt.pb(arr[i]); } else if (ans == root){ dig.pb(arr[i]); } else { ust.pb(arr[i]); } } get(root, dig); get(root, ust); get(ch, alt); } void Solve(int N) { srand(571); vector<int> arr(N-1); for (int i = 1; i < N; i++) arr[i-1] = i; get(0, arr); }

Compilation message (stderr)

meetings.cpp: In function 'void get(int, std::vector<int>&)':
meetings.cpp:28:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < arr.size(); 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...