// 問題文 // 非負整数 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 { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().parse().ok().unwrap() } // 標準入力から一行を読み取り、空白文字で分割し、各要素を指定の型に変換する関数 fn read_vec() -> Vec { read::().split_whitespace() .map(|e| e.parse().ok().unwrap()).collect() } fn read_vec2(n: u32) -> Vec> { (0..n).map(|_| read_vec()).collect() } fn main() { let v:Vec = read_vec(); let n = v[0]; let k = v[1]; let ans = 2_i32.pow(n) / 2_i32.pow(k); println!("{}", ans); }