結果
問題 |
No.2438 Double Least Square
|
ユーザー |
![]() |
提出日時 | 2023-08-15 15:32:20 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 684 bytes |
コンパイル時間 | 2,077 ms |
コンパイル使用メモリ | 196,180 KB |
最終ジャッジ日時 | 2025-02-16 08:22:17 |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 14 WA * 16 |
ソースコード
/* Wrong Answer */ #include<bits/stdc++.h> using namespace std; using ll = long long; using ld = long double; int main(){ ll n, h; cin >> n >> h; ld ans = 1e18; vector<ll> xs(n), ys(n); for (int i = 0; i < n; i++) cin >> xs[i] >> ys[i]; ll rx = 0; for (int i = 0; i < n; i++) rx = max(rx,xs[i]); for (int fy = 0; fy <= 500; fy++) for (int gy = 0; gy <= 500; gy++){ ld cur = 0; for (int i = 0; i < n; i++){ ld fv = ys[i] - ld(fy-h)/rx*xs[i] - h; ld gv = ys[i] - ld(gy)/rx*xs[i]; cur += min(fv*fv,gv*gv); } ans = min(ans,cur); } cout << fixed << setprecision(15) << ans << endl; }