結果
| 問題 |
No.820 Power of Two
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-05-18 17:17:46 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 2,000 ms |
| コード長 | 1,124 bytes |
| コンパイル時間 | 13,743 ms |
| コンパイル使用メモリ | 384,656 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-09-17 06:14:01 |
| 合計ジャッジ時間 | 13,375 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 10 |
コンパイルメッセージ
warning: function `read_vec2` is never used
--> src/main.rs:27:4
|
27 | fn read_vec2<T: std::str::FromStr>(n: u32) -> Vec<Vec<T>> {
| ^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
ソースコード
// 問題文
// 非負整数 N,K が与えられます。次の条件を満たす x の個数を求めてください。
// 条件:x は 1≤x≤2^N を満たす正整数であり、x は 2^K の倍数である
// 入力
// N K
// 0≤N,K≤30
// 出力
// 条件を満たす x の個数を出力してください。最後に改行してください。
// サンプルをpowershellで標準入力で打ち込むは以下
// cat input.txt | .\a.exe
fn read<T: std::str::FromStr>() -> T {
let mut s = String::new();
std::io::stdin().read_line(&mut s).ok();
s.trim().parse().ok().unwrap()
}
// 標準入力から一行を読み取り、空白文字で分割し、各要素を指定の型に変換する関数
fn read_vec<T: std::str::FromStr>() -> Vec<T> {
read::<String>().split_whitespace()
.map(|e| e.parse().ok().unwrap()).collect()
}
fn read_vec2<T: std::str::FromStr>(n: u32) -> Vec<Vec<T>> {
(0..n).map(|_| read_vec()).collect()
}
fn main() {
let v:Vec<u32> = read_vec();
let n = v[0];
let k = v[1];
let ans = 2_u32.pow(n) / 2_u32.pow(k);
println!("{}", ans);
}