use proconio::{fastout, input}; #[fastout] fn main() { input! { a: i32, b: i32, } println!("{}", output(solve(a, b))); } fn solve(mut a: i32, mut b: i32) -> String { let mut ans = String::new(); if a != 0 && ((a >= 0) ^ (b >= 0)) { ans.push('-'); } ans += &((a.abs() / b.abs()).to_string() + "."); a = a.abs() % b.abs() * 10; b = b.abs(); for _ in 1..=100 { ans.push(char::from_digit((a.abs() / b.abs()) as u32, 10).unwrap()); a = a.abs() % b.abs() * 10; } ans } fn output(ans: String) -> String { ans }