Skip to content

Commit 87ebb12

Browse files
committed
add abc416c.rs
1 parent 577d566 commit 87ebb12

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

src/abc/abc416c.rs

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
/** THIS IS AN OUTPUT FILE. NOT EDIT THIS FILE DIRECTLY. **/
2+
use proconio::input;
3+
use proconio::marker::*;
4+
use std::marker::PhantomData;
5+
use std::cmp::*;
6+
use std::collections::*;
7+
8+
struct Helper {
9+
arr: Vec<String>,
10+
s: Vec<String>,
11+
k: usize
12+
}
13+
14+
impl Helper {
15+
fn dfs(&mut self, arr: &mut Vec<String>) {
16+
if arr.len() == self.k {
17+
self.arr.push(arr.join(""));
18+
return;
19+
}
20+
21+
for i in 0..self.s.len() {
22+
arr.push(self.s[i].clone());
23+
self.dfs(arr);
24+
arr.pop();
25+
}
26+
}
27+
}
28+
29+
30+
fn main() {
31+
input! {
32+
n:usize,
33+
k:usize,
34+
x:Usize1,
35+
s:[String;n]
36+
}
37+
38+
let mut helper = Helper {
39+
arr: vec![],
40+
s,
41+
k
42+
};
43+
helper.dfs(&mut vec![]);
44+
45+
helper.arr.sort();
46+
println!("{}", helper.arr[x]);
47+
}

0 commit comments

Comments
 (0)