結果
| 問題 | No.68 よくある棒を切る問題 (2) |
| コンテスト | |
| ユーザー |
threepipes_s
|
| 提出日時 | 2014-11-17 01:14:09 |
| 言語 | Java (openjdk 25.0.1) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,139 bytes |
| 記録 | |
| コンパイル時間 | 2,257 ms |
| コンパイル使用メモリ | 79,424 KB |
| 実行使用メモリ | 153,148 KB |
| 最終ジャッジ日時 | 2025-01-01 18:13:38 |
| 合計ジャッジ時間 | 69,821 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 10 |
ソースコード
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args){
BufferedReader input
= new BufferedReader(new InputStreamReader(System.in));
try{
int n = Integer.parseInt(input.readLine().trim());
String tmp0[] = input.readLine().trim().split(" ");
int q = Integer.parseInt(input.readLine().trim());
String tmp1[] = input.readLine().trim().split(" ");
double[] l = new double[n];
// double[] k = new double[q];
for(int i=0; i<n; i++){
l[i] = Double.parseDouble(tmp0[i]);
}
for(int i=0; i<q; i++){
System.out.println(getLen(l, n, Double.parseDouble(tmp1[i])));
}
}catch(IOException e){
e.printStackTrace();
}
}
public static double getLen(double[] l, int n, double k){
double min = 0;
double max = 1e9;
double len = 0;
long cut;
for(int i=0; i<100; i++){
len = (min+max)/2.0;
cut = 0;
for(int j=0; j<n; j++){
cut += (long)(l[j]/len);
}
if(cut < k){
max = len;
}else{
min = len;
}
}
return len;
}
}
threepipes_s