結果
問題 |
No.183 たのしい排他的論理和(EASY)
|
ユーザー |
![]() |
提出日時 | 2023-04-06 01:15:44 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 164 ms / 5,000 ms |
コード長 | 632 bytes |
コンパイル時間 | 11,721 ms |
コンパイル使用メモリ | 378,452 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-02 03:59:17 |
合計ジャッジ時間 | 13,833 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 18 |
ソースコード
use std::io::{stdin, BufRead}; fn main() { let stdin = stdin(); let mut stdin = stdin.lock().lines().map(Result::unwrap); let _n = stdin.next().unwrap().parse::<usize>().unwrap(); let a = stdin .next() .unwrap() .split_whitespace() .map(|x| x.parse::<usize>().unwrap()) .collect::<Vec<_>>(); let mut dp = vec![false; 1 << 15]; dp[0] = true; for &x in &a { let mut swp = dp.clone(); for i in 0..1 << 15 { swp[i ^ x] |= dp[i]; } dp = swp; } let ans = dp.iter().filter(|&&x| x).count(); println!("{}", ans); }