Submission #1246070

#TimeUsernameProblemLanguageResultExecution timeMemory
1246070KALARRYHack (APIO25_hack)C++20
0 / 100
1571 ms113740 KiB
//chockolateman
#include<bits/stdc++.h>
#include <vector>
#include "hack.h"

using namespace std;

map<vector<long long>,bool> done;
map<vector<long long>,long long> memo;
vector<int> nums;

long long query(vector<long long> &temp)
{
    if(done[temp])
        return memo[temp];
    done[temp] = true;
    memo[temp] = collisions(temp);
    return memo[temp];
}

int hack(){
    done.clear();
    memo.clear();
    std::vector<long long> temp;
    bool broke = false;
    int counter = -1;
    if(nums.empty())
        for(int i = 1 ; i <= 1000000 ; i++)
            nums.push_back(i);
    random_shuffle(nums.begin(),nums.end());
    while(!broke)
    {
        temp.clear();
        counter++;
        temp.push_back(1);
        temp.push_back(1 + nums[counter]);
        if(query(temp))
            broke = true;
    }
    int n = nums[counter];
    for(int x = 1 ; x <= n ; x++)
        if(n%x==0)
        {
            temp.clear();
            temp.push_back(1);
            temp.push_back(1 + x);
            if(query(temp))
                n = x;
        }
    return n;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...