結果
問題 | No.275 中央値を求めよ |
ユーザー |
![]() |
提出日時 | 2023-03-30 09:59:31 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 3 ms / 1,000 ms |
コード長 | 2,711 bytes |
コンパイル時間 | 12,234 ms |
コンパイル使用メモリ | 379,268 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-21 21:26:49 |
合計ジャッジ時間 | 13,609 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 38 |
コンパイルメッセージ
warning: value assigned to `tmp` is never read --> src/main.rs:9:13 | 9 | let mut tmp: f64 = 0.0; | ^^^ | = help: maybe it is overwritten before being read? = note: `#[warn(unused_assignments)]` on by default
ソースコード
use std::io::*;use std::str::FromStr;//use std::num;//use std::cmp;fn main() {let n: usize = read();let mut a: Vec<f64> = vec![0.0; n];let mut tmp: f64 = 0.0;for _i in 0..a.len(){a[_i] = read();}for _j in 0..a.len() - 1{for _i in 0..a.len() - 1{if a[_i] > a[_i + 1]{tmp = a[_i];a[_i] = a[_i + 1];a[_i + 1] = tmp as f64;}}}if n % 2 == 1{println!("{}",a[(n - 1) / 2])}else{println!("{}",(a[n / 2 - 1] + a[n / 2]) / 2.0);}}pub fn upper_lower(x: char) -> char{let result: char;if x.is_uppercase(){result = x.to_ascii_lowercase();} else if x.is_lowercase(){result = x.to_ascii_uppercase();} else {result = x;}result}pub fn max(x: isize, y: isize, z: isize) -> isize {let result;if x >= y && y >= z {result = x;} else if x >= z && z >= y {result = x;} else if y >= x && x >= z {result = y;} else if y >= z && z >= x {result = y;} else if z >= x && x >= y {result = z;} else {result = z;}result}pub fn min(x: isize, y: isize, z: isize) -> isize {let result;if x <= y && y <= z {result = x;} else if x <= z && z <= y {result = x;} else if y <= x && x <= z {result = y;} else if y <= z && z <= x {result = y;} else if z <= x && x <= y {result = z;} else {result = z;}result}pub fn read_line() -> String {let mut s: String = String::new();std::io::stdin().read_line(&mut s).ok();s}pub fn read<T: FromStr>() -> T {let stdin = stdin();let stdin = stdin.lock();let token: String = stdin.bytes().map(|c| c.expect("failed to read char") as char).skip_while(|c| c.is_whitespace()).take_while(|c| !c.is_whitespace()).collect();token.parse().ok().expect("failed to parse token")}pub fn read_array() -> Vec<char> {let array: String = read();let chars: Vec<char> = array.trim().chars().collect::<Vec<char>>();chars}pub fn get_data() -> Vec<u64> {let mut s: String = String::new();std::io::stdin().read_line(&mut s).ok();let vec: Vec<u64> = s.trim().split_whitespace().map(|e| e.parse().ok().unwrap()).collect();vec}pub fn get_chars() -> Vec<char> {let mut s: String = String::new();std::io::stdin().read_line(&mut s).ok();let vec: Vec<char> = s.trim().chars().collect::<Vec<char>>();vec}