結果
| 問題 |
No.3042 拡大コピー
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-01-09 01:14:09 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
AC
|
| 実行時間 | 87 ms / 2,000 ms |
| コード長 | 798 bytes |
| コンパイル時間 | 12,794 ms |
| コンパイル使用メモリ | 403,332 KB |
| 実行使用メモリ | 25,796 KB |
| 最終ジャッジ日時 | 2025-03-01 07:37:46 |
| 合計ジャッジ時間 | 14,615 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 24 |
ソースコード
use proconio::input;
fn main() {
input! {
n: usize,
ab: [(f64, f64); n],
cd: [(f64, f64); n],
}
let ab_mean = [
ab.iter().map(|x| x.0).fold(0., |acc, a| acc + a) / n as f64,
ab.iter().map(|x| x.1).fold(0., |acc, a| acc + a) / n as f64,
];
let cd_mean = [
cd.iter().map(|x| x.0).fold(0., |acc, a| acc + a) / n as f64,
cd.iter().map(|x| x.1).fold(0., |acc, a| acc + a) / n as f64,
];
let ans = cd
.iter()
.map(|(c, d)| ((*c - cd_mean[0]).powi(2) + (*d - cd_mean[1]).powi(2)).sqrt())
.fold(0., |acc, a| acc + a)
/ ab.iter()
.map(|(a, b)| ((*a - ab_mean[0]).powi(2) + (*b - ab_mean[1]).powi(2)).sqrt())
.fold(0., |acc, a| acc + a);
println!("{}", ans);
}