AtCoder Grand Contest #035 C問題 - Skolem XOR Tree

Source

AtCoder Grand Contest #035
問題文

問題概要

省略

解法

省略

cLayversion 20190714-1)のコード

C++に変換後のコードはこちら

int N;

int M, A[2d5], B[2d5];

void doit(int a, int b){
  A[M] = a;
  B[M++] = b;
}

{
  int i, k;

  rd(N);

  k = 0;
  rep(i,20) if(N&1<<i) k = (1<<i);

  if(N==k){
    wt("No");
    return 0;
  }

  doit(1, 2);
  doit(2, 3);
  doit(3, 1+N);
  doit(1+N, 2+N);
  doit(2+N, 3+N);

  for(i=4;i<N;i+=2){
    doit(i, i+1);
    doit(N+i, N+i+1);
    doit(1, i);
    doit(1, N+i+1);
  }
  if(N%2==0){
    doit(k+1+N, N);
    doit(N-k, N+N);
  }

  wt("Yes");
  rep(i,M) wt(A[i], B[i]);
}

Current time: 2021年09月28日23時01分49秒
Last modified: 2019年07月15日03時20分12秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Grand_Contest AGC035 AGC_C
トップページに戻る

Logged in as: unknown user (not login)

ログイン: