結果

問題 No.47 ポケットを叩くとビスケットが2倍
コンテスト
ユーザー RK-4869
提出日時 2026-03-24 11:02:38
言語 Python3
(3.14.3 + numpy 2.4.2 + scipy 1.17.0)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
AC  
実行時間 108 ms / 5,000 ms
コード長 1,071 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 565 ms
コンパイル使用メモリ 20,700 KB
実行使用メモリ 15,360 KB
最終ジャッジ日時 2026-03-24 11:02:42
合計ジャッジ時間 3,840 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#---問題---

# Saraは、「ふしぎなポケット」を手に入れた。
# 「ふしぎなポケット」は、いくつかビスケットを入れて叩くと、入れたビスケットの数が2倍になる。
# Saraは最初1枚のビスケットを持っていて、「ふしぎなポケット」を使ってちょうどN枚のビスケットにして、全部食べたいと思っている。
# (食べきれないので枚数をオーバーしてはいけない)
# この時、ちょうどN枚にするには、Saraは最低何回ポケットを叩く必要があるか求めてください。

#---出力条件---
#Saraが叩くポケットの最小回数を出力

N = int(input())
#print(N) 

#最初から1枚を持っていることを入力
first = 1
#ビスケットを叩いた回数のカウンタ
hit_count = 0
#定義からNはfirst=1より大きい
while N > first:
    #手持ちを1回叩くごとに倍数になるとすると
    first = first * 2
    #叩く回数を1増やす。
    hit_count += 1
#hit_countを出力
print(hit_count)
0