Submission #151532

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
1515322019-09-03 13:52:59edenoooOrganizing the Best Squad (FXCUP4_squad)C++17
100 / 100
984 ms56832 KiB
#include "squad.h"
#include<vector>
#include<algorithm>
using namespace std;
#define INF 9'000'000'000'000'000'000LL
#define ll long long
struct Fraction {
ll a, b; // a/b
bool operator< (Fraction &n)
{
if (a == -INF) return true; //
if (n.a == -INF) return false;
ll ta, tb, tc, td;
ta = a; tb = b; tc = n.a; td = n.b;
if (tb < 0) { ta *= -1; tb *= -1; }
if (td < 0) { tc *= -1; td *= -1; }
return ta * td < tb * tc;
}
bool operator<= (Fraction &n)
{
if (a == -INF) return true;
if (n.a == -INF) return false;
ll ta, tb, tc, td;
ta = a; tb = b; tc = n.a; td = n.b;
if (tb < 0) { ta *= -1; tb *= -1; }
if (td < 0) { tc *= -1; td *= -1; }
return ta * td <= tb * tc;
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

squad.cpp: In member function 'int CHT::query(Fraction)':
squad.cpp:93:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
    int mid = lo + hi >> 1;
              ~~~^~~~
squad.cpp: In function 'void Init(std::vector<int>, std::vector<int>, std::vector<int>)':
squad.cpp:111:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < v.size(); i++)
                  ~~^~~~~~~~~~
squad.cpp:128:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < v.size(); i++)
                  ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...