Submission #33921345


Source Code Expand

Copy
use proconio::input;
fn f(memo: &mut Vec<Vec<Vec<Option<f64>>>>, a: usize, b: usize, c: usize) -> f64 {
if a == 100 || b == 100 || c == 100 {
return 0_f64;
}
if let Some(x) = memo[a][b][c] {
return x;
}
let res = (a as f64 * f(memo, a + 1, b, c)
+ b as f64 * f(memo, a, b + 1, c)
+ c as f64 * f(memo, a, b, c + 1))
/ (a + b + c) as f64
+ 1_f64;
memo[a][b][c] = Some(res);
res
}
fn main() {
input! {
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
use proconio::input;

fn f(memo: &mut Vec<Vec<Vec<Option<f64>>>>, a: usize, b: usize, c: usize) -> f64 {
    if a == 100 || b == 100 || c == 100 {
        return 0_f64;
    }
    if let Some(x) = memo[a][b][c] {
        return x;
    }

    let res = (a as f64 * f(memo, a + 1, b, c)
        + b as f64 * f(memo, a, b + 1, c)
        + c as f64 * f(memo, a, b, c + 1))
        / (a + b + c) as f64
        + 1_f64;
    memo[a][b][c] = Some(res);
    res
}

fn main() {
    input! {
        a: usize,
        b: usize,
        c: usize,
    };
    let mut memo = vec![vec![vec![None; 100 + 1]; 100 + 1]; 100 + 1];
    let ans = f(&mut memo, a, b, c);
    println!("{}", ans);
}

Submission Info

Submission Time
Task D - increment of coins
User bouzuya
Language Rust (1.42.0)
Score 400
Code Size 677 Byte
Status AC
Exec Time 46 ms
Memory 18664 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 4
AC × 24
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt
All hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, hand_05.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt
Case Name Status Exec Time Memory
hand_01.txt AC 46 ms 18516 KB
hand_02.txt AC 32 ms 18564 KB
hand_03.txt AC 46 ms 18564 KB
hand_04.txt AC 17 ms 18640 KB
hand_05.txt AC 17 ms 18512 KB
random_01.txt AC 21 ms 18580 KB
random_02.txt AC 19 ms 18640 KB
random_03.txt AC 19 ms 18560 KB
random_04.txt AC 26 ms 18576 KB
random_05.txt AC 19 ms 18452 KB
random_06.txt AC 26 ms 18584 KB
random_07.txt AC 24 ms 18460 KB
random_08.txt AC 34 ms 18480 KB
random_09.txt AC 22 ms 18656 KB
random_10.txt AC 25 ms 18544 KB
random_11.txt AC 23 ms 18448 KB
random_12.txt AC 21 ms 18500 KB
random_13.txt AC 21 ms 18548 KB
random_14.txt AC 21 ms 18512 KB
random_15.txt AC 20 ms 18568 KB
sample_01.txt AC 17 ms 18520 KB
sample_02.txt AC 21 ms 18556 KB
sample_03.txt AC 45 ms 18664 KB
sample_04.txt AC 24 ms 18564 KB


2025-04-11 (Fri)
09:43:06 +00:00