結果
問題 | No.1280 Beyond C |
ユーザー |
|
提出日時 | 2020-11-06 22:03:58 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,038 bytes |
コンパイル時間 | 2,130 ms |
コンパイル使用メモリ | 198,968 KB |
最終ジャッジ日時 | 2025-01-15 20:42:49 |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 22 TLE * 1 |
ソースコード
// g++ A.cpp -std=c++14 -I . && ./a.out #include <bits/stdc++.h> using namespace std; // #include <atcoder/all> // using namespace atcoder; // using mint = modint1000000007; // using mint = modint998244353; #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define rep2(i, a, b) for (int i = a; i < (int)(b); i++) #define rrep(i, a, b) for (int i = a; i > (int)(b); i--) #define all(v) v.begin(), v.end() using ll = long long; const ll INF = 1e18; // 変数定義 ll N, M, C, Q, a, b, c, d, x, y, t, T, total, cnt, ans; int main() { cout << fixed << setprecision(10); ios::sync_with_stdio(false); cin.tie(nullptr); cin >> N >> M >> C; vector<ll> A(N), B(M); rep(i, N) cin >> A[i]; rep(i, M) cin >> B[i]; sort(all(A)); sort(all(B)); reverse(all(B)); int k = 0; rep(i, N) { rep2(j, k, M) { if (A[i] * B[j] <= C) { ans += j; k = j; break; } } if (A[i] * B[M - 1] > C) { ans += M; } } cout << (double)ans / (N * M) << '\n'; return 0; }