結果
| 問題 |
No.1381 Simple Geometry 1
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-02-07 22:45:16 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 1,293 bytes |
| コンパイル時間 | 1,850 ms |
| コンパイル使用メモリ | 194,100 KB |
| 最終ジャッジ日時 | 2025-01-18 15:13:17 |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 2 RE * 27 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define FASTIO ios_base::sync_with_stdio(false); cin.tie(NULL);
#define all(x) (x).begin(), (x).end()
#define pb push_back
#define pii pair<int, int>
#define ff first
#define ss second
#define PI acos(-1)
#define ld long double
template<class T> bool chmin(T& a, const T& b) {return a>b? a=b, true:false;}
template<class T> bool chmax(T& a, const T& b) {return a<b? a=b, true:false;}
const int mod = 1e9+7, N = 2e5+5;
int msb(int val){return sizeof(int)*8-__builtin_clzll(val)-1;}
int a[N], n, m, k;
const ld eps = 1e-9;
void solve(int test_case){
cout << fixed << setprecision(10);
int i, j;
int area;
ld bp, bq, w, ap,cq;
cin >> area >> ap >> cq >> w;
ld A, B;
for(i=1;i<=area;i++){
if(area%i!=0)continue;
A = i;
B = area/i;
bp = sqrtl(ap*ap + A*A);
bq = sqrtl(cq*cq + B*B);
if(abs((bp-bq)-w) < eps){
//~ cout << bp << ' ' << bq << '\n';
ld now = area;
now -= (A*ap)/2;
now -= (B*cq)/2;
ld c = B-ap;
ld d = A-cq;
now -= (c*d)/2;
cout << now << '\n';
return;
}
}assert(false);
return;
}
signed main(){
FASTIO;
//~ #define MULTITEST 1
#if MULTITEST
int _T;
cin >> _T;
for(int T_CASE = 1; T_CASE <= _T; T_CASE++)
solve(T_CASE);
#else
solve(1);
#endif
return 0;
}