結果
問題 | No.47 ポケットを叩くとビスケットが2倍 |
ユーザー | velfare_nagata |
提出日時 | 2016-10-03 21:47:26 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 26 ms / 5,000 ms |
コード長 | 1,478 bytes |
コンパイル時間 | 812 ms |
コンパイル使用メモリ | 105,508 KB |
実行使用メモリ | 26,124 KB |
最終ジャッジ日時 | 2024-05-01 11:22:53 |
合計ジャッジ時間 | 2,153 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 25 ms
24,364 KB |
testcase_01 | AC | 24 ms
24,028 KB |
testcase_02 | AC | 24 ms
25,952 KB |
testcase_03 | AC | 26 ms
25,992 KB |
testcase_04 | AC | 25 ms
26,068 KB |
testcase_05 | AC | 25 ms
25,936 KB |
testcase_06 | AC | 24 ms
26,116 KB |
testcase_07 | AC | 25 ms
25,864 KB |
testcase_08 | AC | 24 ms
23,904 KB |
testcase_09 | AC | 25 ms
26,072 KB |
testcase_10 | AC | 25 ms
24,084 KB |
testcase_11 | AC | 25 ms
25,940 KB |
testcase_12 | AC | 24 ms
23,852 KB |
testcase_13 | AC | 25 ms
21,940 KB |
testcase_14 | AC | 24 ms
24,032 KB |
testcase_15 | AC | 25 ms
23,772 KB |
testcase_16 | AC | 24 ms
24,028 KB |
testcase_17 | AC | 25 ms
23,980 KB |
testcase_18 | AC | 24 ms
26,124 KB |
testcase_19 | AC | 24 ms
24,084 KB |
testcase_20 | AC | 24 ms
23,984 KB |
testcase_21 | AC | 25 ms
26,000 KB |
testcase_22 | AC | 24 ms
24,240 KB |
testcase_23 | AC | 24 ms
24,108 KB |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Diagnostics; namespace CodeIq { internal class Program { ///<summary> /// Saraは、「ふしぎなポケット」を手に入れた。 /// /// 「ふしぎなポケット」は、いくつかビスケットを入れて叩くと、入れたビスケットの数が2倍になる。 /// Saraは最初1枚のビスケットを持っていて、「ふしぎなポケット」を使ってちょうどN枚のビスケットにして、全部食べたいと思っている。 /// (食べきれないので枚数をオーバーしてはいけない) /// /// この時、ちょうどN枚にするには、Saraは最低何回ポケットを叩く必要があるか求めてください。 /// </summary> private static void Main() { // パラメータ取得 var line = Console.ReadLine(); //var line = "3"; if( string.IsNullOrEmpty( line ) ) return; var paramData = line.Split( ' ' ); var n = int.Parse( paramData[0] ); // クッキーの数がNを超過しないように都度「ふしぎなポケット」にクッキーを入れられるだけ入れて叩く var cookieCount = 1; var hitCount = 0; while( cookieCount != n ) { var wantCookieCount = ( n - cookieCount ); var pocket = ( wantCookieCount < cookieCount ) ? wantCookieCount : cookieCount; cookieCount += pocket; hitCount++; } Debug.Print( hitCount.ToString() ); Console.WriteLine( hitCount ); } } }