結果
問題 |
No.3262 水色コーダーさん、その問題d問題ですよ?(1<=d<=N)
|
ユーザー |
![]() |
提出日時 | 2025-09-06 14:39:26 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 967 bytes |
コンパイル時間 | 24,622 ms |
コンパイル使用メモリ | 394,184 KB |
実行使用メモリ | 7,716 KB |
最終ジャッジ日時 | 2025-09-06 14:40:18 |
合計ジャッジ時間 | 15,581 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 24 |
ソースコード
use proconio::input; fn dfs(p: &mut Vec<(usize, usize)>, visited: &mut Vec<bool>, path: &mut Vec<usize>, num:usize, depth: usize, ans:&mut usize) { if depth == num{ if check(p, path) { *ans +=1; } return } for u in 0..num{ if !visited[u]{ visited[u]=true; path.push(u); dfs(p, visited, path, num, depth + 1,ans); path.pop(); visited[u]=false; } } } fn check(p: &mut Vec<(usize, usize)>, path:&mut Vec<usize>) -> bool { let len = path.len(); let mut current = p[path[0]].0; for i in 1..len { if current <= p[path[i]].1 { current = current.max(p[path[i]].0); } else { return false; } } return true; } fn main() { input!{ n: usize, mut lr: [(usize, usize); n] } let mut ans = 0; dfs(&mut lr, &mut vec![false; n], &mut Vec::new(), n, 0, &mut ans); println!("{:?}", ans); }