rustgym 0.2.0

rustgym solutions
Documentation
struct Solution;

impl Solution {
    fn orderly_queue(s: String, k: i32) -> String {
        let mut s: Vec<char> = s.chars().collect();
        let n = s.len();
        if k > 1 {
            s.sort_unstable();
            s.into_iter().collect()
        } else {
            let mut res = s.to_vec();
            for i in 0..n {
                let mut t = vec![];
                for j in i..n {
                    t.push(s[j]);
                }
                for j in 0..i {
                    t.push(s[j]);
                }
                if t < res {
                    res = t;
                }
            }
            res.into_iter().collect()
        }
    }
}

#[test]
fn test() {
    let s = "cba".to_string();
    let k = 1;
    let res = "acb".to_string();
    assert_eq!(Solution::orderly_queue(s, k), res);
    let s = "baaca".to_string();
    let k = 3;
    let res = "aaabc".to_string();
    assert_eq!(Solution::orderly_queue(s, k), res);
}