# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
565087 | Uzouf | 저장 (Saveit) (IOI10_saveit) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#include "grader.h"
#include "encoder.h"
void encode(int n,int h,int p,int a[],int b[]) {
int grid[N][N];
for (int i=0;i<N;i++) {
for (int j=0;j<N;j++) {
grid[i][j]=2000;
}
grid[i][i]=0;
}
for (int i=0;i<p;i++) {
grid[a[i]][b[i]]=1;
grid[b[i]][a[i]]=1;
}
for (int k=0;k<N;k++)
for (int i=0;i<N;i++) {
for (int j=0;j<N;j++) {
int tmp=grid[i][k]+grid[k][j];
if (i!=j && grid[i][j]>tmp) grid[i][j]=tmp;
}
}
for (int i=0;i<h;i++) {
for (int j=0;j<n;j++) {
int nm=grid[i][j];
for (int pp=0;pp<10;pp++) {
if (((1<<pp)&nm)==0) encode_bit(0);
else encode_bit(1);
}
}
}
}
#include <bits/stdc++.h>
using namespace std;
#include "grader.h"
#include "encoder.h"
#define int long long
const int N=1000+5;
void decode(int n,int h) {
for (int i=0;i<h;i++) {
for (int j=0;j<n;j++) {
int nm=0;
for (int p=0;p<10;p++) {
nm+=((1<<p)*decode_bit());
}
hops(i,j,nm);
}
}
}