Submission #888666

#TimeUsernameProblemLanguageResultExecution timeMemory
888666Sir_Ahmed_ImranSaveit (IOI10_saveit)C++17
50 / 100
191 ms20492 KiB
                              ///~~~LOTA~~~///
#include "grader.h"
#include <bits/stdc++.h>
using namespace std;
#define N 1000
void encode(int n,int m,int p,int a[],int b[]){
    int o;
    int d[m][n];
    bool vis[n];
    vector<int> e[n];
    for(int i=0;i<p;i++){
        e[a[i]].push_back(b[i]);
        e[b[i]].push_back(a[i]);
    }
    for(int i=0;i<m;i++){
        for(int j=o=0;j<n;j++)
            vis[j]=1;
        vis[i]=0;
        vector<int> u,v{i};
        while(!v.empty()){
            for(auto& j:v){
                d[i][j]=o;
                for(auto& k:e[j]){
                    if(vis[k])
                        u.push_back(k);
                    vis[k]=0;
                }
            }
            o++;
            v=u;
            u.clear();
        }
    }
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++){
            for(int k=512;k>0;k/=2){
                if(d[i][j]>=k){
                    encode_bit(1);
                    d[i][j]-=k;
                }
                else encode_bit(0);
            }
        }
    }
}
                              ///~~~LOTA~~~///
#include "grader.h"
#include <bits/stdc++.h>
using namespace std;
void decode(int n,int m){
    int o;
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++){
            o=0;
            for(int k=512;k>0;k/=2){
                if(decode_bit()) o+=k;
            }
            hops(i,j,o);
        }
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...