| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 217318 | jurichhh8 | Konstrukcija (COCI20_konstrukcija) | C++14 | 6 ms | 384 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 <iostream>
#include <cmath>
#include <vector>
using namespace std;
vector<int> veki[1000];
int mx;
int main () {
	long long k;
	cin>>k;
	if(k==0){
		cout<<5<<" "<<5<<endl<<1<<" "<<2<<endl<<2<<" "<<3<<endl<<2<<" "<<4<<endl<<4<<" "<<5<<endl<<3<<" "<<5;
		return 0;
	}
	int sgn=(k<0);
	int nep=(k%2);
	k=abs(k);
	long long x=log2(k);
	x++;
	long long br;
	if(sgn){
		br=k;
	}
	else br=pow(2,x)-k;
	veki[1].push_back(2);
	veki[1].push_back(3);
	veki[1].push_back(4);
	int e=3;
	for(int i=1;i<x;i++){
		veki[3*i-1].push_back(3*i+2);
		veki[3*i-1].push_back(3*i+3);
		veki[3*i-1].push_back(3*i+4);
		veki[3*i].push_back(3*i+2);
		veki[3*i].push_back(3*i+3);
		veki[3*i].push_back(3*i+4);
		veki[3*i+1].push_back(3*i+2);
		veki[3*i+1].push_back(3*i+3);
		veki[3*i+1].push_back(3*i+4);
		e+=9;
	}
	br/=2;
	mx=3*x+2;
	for(long long i=0;i<x;i++){
		if(br & (1<<i)){
			if(i%2==0){
				veki[1].push_back(mx);
				veki[mx].push_back(3*(x-i)+1);
				veki[mx].push_back(3*(x-i));
				veki[mx].push_back(3*(x-i)-1);
				mx++;
				e+=4;
			}
			else{
				veki[1].push_back(mx);
				veki[mx].push_back(3*(x-i)+1);
				veki[mx].push_back(3*(x-i));
				veki[mx].push_back(3*(x-i)-1);
				mx++;
				veki[1].push_back(mx);
				veki[mx].push_back(3*(x-i-1)+1);
				veki[mx].push_back(3*(x-i-1));
				veki[mx].push_back(3*(x-i-1)-1);
				mx++;
				e+=8;
			}
		}
	}
	if(x%2==0){
		veki[1].push_back(mx);
		veki[mx].push_back(2);
		veki[mx].push_back(3);
		veki[mx].push_back(4);
		mx++;
		e+=4;
		if(sgn==0){
			veki[1].push_back(mx);
			veki[mx].push_back(2);
			veki[mx].push_back(3);
			veki[mx].push_back(4);
			mx++;
			e+=4;
		}
	}
	else{
		if(sgn){
			veki[1].push_back(mx);
			veki[mx].push_back(2);
			veki[mx].push_back(3);
			veki[mx].push_back(4);
			mx++;
			e+=4;
		}
	}
	if(nep){
		veki[1].push_back(mx);
		veki[mx].push_back(3*x+1);
		veki[mx].push_back(3*x-1);
		veki[mx].push_back(3*x);
		mx++;
		veki[1].push_back(mx);
		veki[mx].push_back(mx+1);
		mx++;
		e+=6;
	}
	veki[3*x].push_back(mx);
	veki[3*x-1].push_back(mx);
	veki[3*x+1].push_back(mx);
	e+=3;
	cout<<mx<<" "<<e<<endl;
	for(int i=1;i<mx;i++){
		for(int j=0;j<veki[i].size();j++){
			cout<<i<<" "<<veki[i][j]<<endl;
		}
	}
	
return 0;
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
