Pythonで1057(セグメント)のBack Junアルゴリズムの問題を解く



質問の概要

  • の出場選手Nと金ジミンと林漢秀の番号を与えた.
  • トーナメント形式で行われ、金智敏と林漢秀はいつも勝っている.
  • 金智敏と林漢秀は第数ラウンドの対決で
  • を出力する.

    解題コード

    m,start,end = map(int,input().split())
    cnt=0
    while start!=end:
      start -= start //2 
      end -= end //2
      cnt+=1
    print(cnt)

    コードの説明

  • 金智敏と林漢秀の番号はトーナメント形式なので、半分を引いた数は
  • です.
  • 金智敏と林漢秀の番号が同時に、貯蔵サイクル数のcntが出力される.
  • に感銘を与える


    これは
  • で解けなかった問題です.難しすぎる
  • 配列では、個数に応じて数字を格納し、長さが偶数の場合、後ろの2つのpop()で、2つとも金智敏と林漢秀の番号の場合、ラウンド数を出力しようとした.長さが奇数の場合、後にpop()が1つしか保存されません.
  • まず手解をしてから、ルールとアルゴリズムを考慮します.