LeetCode Weekly Contest 143 2問目 - Path In Zigzag Labelled Binary Tree [1104]

Source

LeetCode Weekly Contest 143
問題文

問題概要

省略

解法

省略

cLayversion 20190630-1)のコード [C++に変換後]

#include<bits/stdc++.h>
using namespace std;
class Solution{
  public:
  vector<int> pathInZigZagTree(int label){
    int i, x, y;
    vector<int> res;
    for(;;){
      res.push_back(label);
      if(label==1){
        break;
      }
      label /= 2;
    }
    reverse(res.begin(), res.end());
    for(i=res.size()%2;i<res.size();i+=2){
      x = 1<<i;
      y = 2*x - 1;
      res[i] = y - (res[i] - x);
    }
    return res;
  }
}
;
// cLay varsion 20190630-1

// --- original code ---
// class Solution {
// public:
//   vector<int> pathInZigZagTree(int label) {
//     int i, x, y;
//     vector<int> res;
// 
//     for(;;){
//       res.push_back(label);
//       if(label==1) break;
//       label /= 2;
//     }
//     reverse(res.begin(), res.end());
//     for(i=res.size()%2;i<res.size();i+=2){
//       x = 1<<i;
//       y = 2x - 1;
//       res[i] = y - (res[i] - x);
//     }
// 
//     return res;
//   }
// };
// {
//   // main関数を適当に処理する
// }

Current time: 2024年04月25日21時21分25秒
Last modified: 2019年07月01日01時16分46秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る

Logged in as: unknown user (not login)

ログイン: