結果
| 問題 |
No.67 よくある棒を切る問題 (1)
|
| コンテスト | |
| ユーザー |
vjudge1
|
| 提出日時 | 2024-11-07 18:22:38 |
| 言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 750 bytes |
| コンパイル時間 | 2,518 ms |
| コンパイル使用メモリ | 170,460 KB |
| 実行使用メモリ | 10,784 KB |
| 最終ジャッジ日時 | 2025-03-03 12:17:22 |
| 合計ジャッジ時間 | 10,243 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 2 WA * 7 TLE * 1 -- * 20 |
ソースコード
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
#define ios ios_base::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
#define f first
#define s second
#define endl "\n"
const int N=2e5+10;
int n,k;
int a[N];
bool check(double x)
{
int res=0;
for(int i=1;i<=n;i++)res+=int(1.0*a[i]/x);
return res>=k;
}
int main()
{
cin>>n;
int mx=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];mx=max(a[i],mx);
}
cin>>k;
double l=0,r=mx;
while(r-l>1e-10)
{
double mid=(l+r)/2;
if(check(mid))l=mid;
else r=mid;
}
cout<<fixed<<setprecision(16)<<l<<endl;
return 0;
}
//rrrbb
//6.666666666666667
//6.6666666666662877
vjudge1