結果
| 問題 |
No.47 ポケットを叩くとビスケットが2倍
|
| コンテスト | |
| ユーザー |
mumucoder
|
| 提出日時 | 2018-10-28 22:52:17 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 729 bytes |
| コンパイル時間 | 1,086 ms |
| コンパイル使用メモリ | 67,952 KB |
| 実行使用メモリ | 6,824 KB |
| 最終ジャッジ日時 | 2024-11-19 07:25:27 |
| 合計ジャッジ時間 | 1,539 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 14 WA * 7 |
ソースコード
#include <iostream>
#include <map>
#include <string>
#include <vector>
#include <cmath>
int main(int argc, char *argv[]) {
int bisket_num = 0;
std::cin >> bisket_num;
uint32_t result = 0;
for (int clap_num = 0; clap_num <= 32; clap_num++) {
uint64_t powered_num = std::pow(2, clap_num);
if (bisket_num > powered_num) {
continue;
}
if (bisket_num == powered_num) {
result = clap_num;
break;
}
if (bisket_num < powered_num) {
clap_num--;
uint64_t base_num = std::pow(2, clap_num);
uint64_t sub = bisket_num - base_num;
if (sub % 2 == 0 || sub == 1) {
result = clap_num + 1;
} else {
result = clap_num + 2;
}
break;
}
}
std::cout << result << std::endl;
return 0;
}
mumucoder