結果
| 問題 | No.39 桁の数字を入れ替え | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2025-03-26 20:38:54 | 
| 言語 | Rust (1.83.0 + proconio) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 1 ms / 5,000 ms | 
| コード長 | 712 bytes | 
| コンパイル時間 | 13,934 ms | 
| コンパイル使用メモリ | 386,808 KB | 
| 実行使用メモリ | 5,888 KB | 
| 最終ジャッジ日時 | 2025-03-26 20:39:11 | 
| 合計ジャッジ時間 | 15,579 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 19 | 
ソースコード
#[allow(unused)]
use proconio::{input, marker::Chars};
fn main() {
    input! {
        mut n: usize,
    }
    let mut digits = Vec::new();
    let mut w = n;
    while w > 0 {
        digits.push(w % 10);
        w /= 10;
    }
    let m = digits.len();
    for i in 0..m {
        let x = digits[i];
        for j in i + 1..m {
            let y = digits[j];
            digits[i] = y;
            digits[j] = x;
            n = n.max(new_num(&digits));
            digits[i] = x;
            digits[j] = y;
        }
    }
    println!("{n}")
}
fn new_num(d: &Vec<usize>) -> usize {
    let mut ret = 0;
    let mut m = 1;
    for i in 0..d.len() {
        ret += m * d[i];
        m *= 10;
    }
    ret
}
            
            
            
        