Submission #7946736


Source Code Expand

    #include<stdio.h>
    #include<stdlib.h>
    #include<stdarg.h>
    #include<string.h>
    #include<math.h>
    #include<string>
    #include<list>
    #include<map>
    #include<set>
    #include<algorithm>
    #include<queue>
    #include<vector>
    #include<sstream>
    #include<fstream>
    #include<iostream>
    using namespace std;
     
     
    int main()
    {
    	int N, K;
    	cin >> N >> K;
    	if( N / 2 < K ){
    		printf( "-1\n" );
    		return 0;
    	}
    	vector<int> A;
    	A.push_back(0);
    	for( int j = 0, R = 1, L = N - 1; j < N - 1; j ++ ){
    		if( j & 1 ){
    			A.push_back(L);
    			L --;
    		}
    		else{
    			A.push_back(R);
    			R ++;
    		}
    	}
    	for( int i = 0; i < K; i ++ ){
    		for( int j = 0; j < N-1; j ++ )
    			printf( "%d %d\n", (A[j]+i)%N+1, (A[j+1]+i)%N+1 );
    		if( i+1 < K )
    			printf( "\n" );
    	}
    	return 0;
    }

Submission Info

Submission Time
Task F - 全域木
User zs__std
Language C++ (GCC 5.4.1)
Score 0
Code Size 954 Byte
Status IE