Submission #523960

#TimeUsernameProblemLanguageResultExecution timeMemory
523960cqtshadowDetecting Molecules (IOI16_molecules)C++14
0 / 100
1 ms292 KiB
#include <bits/stdc++.h>
#define MASK(x) (1LL << x)
#define GETBIT(mask, x) ((mask >> (x))&1)
#define ONBIT(mask, x) (mask | (1LL << (x)))
#define Each(type, i, a, b) for(type i = (a) ; i <= (b) ; ++i)
#define REach(type, i, a, b) for(type i = (a) ; i >= (b) ; --i)
using namespace std;

typedef long long ll;

const int N = 2e5 + 7;
const int MOD = 1e9 + 7;
const int INF = 2e9;
const double eps = 1e-9;
const ll oo = 4e18;

template<class X> bool maximize(X &x, X y) {return (x + eps < y ? x = y, true : false);}
template<class X> bool minimize(X &x, X y) {return (x > y + eps ? x = y, true : false);}

void add(int &x, int y) {x += y; if(x >= MOD) x -= MOD;}
void sub(int &x, int y) {x -= y; if(x < 0) x += MOD;}
int radd(int x, int y) {add(x, y); return x;}
int rsub(int x, int y) {sub(x, y); return x;}

string to2(int val) {bitset<10> temp(val); return temp.to_string();}

int n;

namespace SUB1 {
    vector<int> solve(int l, int u, vector<int> w) {
        vector<int> result;
        int element = w[0];
        int k = 0;
        while(element * k < l) {
            result.push_back(element);
            ++k;
        }
        if(element * k > u) return vector<int>(0);
        return result;
    }
}

vector<int> find_subset(int l, int u, vector<int> w) {
    n = w.size();
    int wmax = -1;
    bool isequal = true; int ele = w[0];

    for(int x : w) {
        maximize(wmax, x);
        isequal &= (ele == x);
    }

    if(n <= 100 && wmax <= 100 && l <= 1000 && isequal)
        return SUB1::solve(l, u, w);
}

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:55:1: warning: control reaches end of non-void function [-Wreturn-type]
   55 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...