提出 #4352919


ソースコード 拡げる

Copy
#include<bits/stdc++.h>
using namespace std;
void rd(int &x){
  int k, m=0;
  x=0;
  for(;;){
    k = getchar_unlocked();
    if(k=='-'){
      m=1;
      break;
    }
    if('0'<=k&&k<='9'){
      x=k-'0';
      break;
    }
  }
  for(;;){
    k = getchar_unlocked();
    if(k<'0'||k>'9'){
      break;
    }
    x=x*10+k-'0';
  }
  if(m){
    x=-x;
  }
}
void wt_L(double x){
  printf("%.15f",x);
}
template<class T> inline T pow2_L(T a){
  return a*a;
}
double solve(double H, double A){
  double res;
  if(H > 2*A){
    res = A*A*A/3;
    res += -A*A*A + A*A*H/2;
  }
  else{
    res = A*A*A*2/3 - A*A*H*3/2 + A*H*H - H*H*H/6;
  }
  res /=pow2_L((H-A));
  res *= 2;
  return res;
}
int main(){
  double res;
  int A, B, H, W;
  rd(H);
  rd(W);
  rd(A);
  rd(B);
  res = solve(H,A)*solve(W,B);
  wt_L(res);
  putchar_unlocked('\n');
  return 0;
}
// cLay varsion 20180730-1

// --- original code ---
// 
// double solve(double H, double A){
//   double res;
// 
//   if(H > 2*A){
//     res = A*A*A/3;
//     res += -A*A*A + A*A*H/2;
//   } else {
//     res = A*A*A*2/3 - A*A*H*3/2 + A*H*H - H*H*H/6;
//   }
// 
//   res /= (H-A)**2;
//   res *= 2;
//   return res;
// }
// 
// {
//   int H,W,A,B;
//   double res;
// 
//   rd(H,W,A,B);
//   res = solve(H,A)*solve(W,B);
//   wt(res);
// }

提出情報

提出日時
問題 A - Affiches
ユーザ LayCurse
言語 C++14 (GCC 5.4.1)
得点 500
コード長 1294 Byte
結果
実行時間 1 ms
メモリ 256 KB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 500 / 500
結果
× 2
× 12
セット名 テストケース
Sample 01.txt, 02.txt
All 01.txt, 02.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt
ケース名 結果 実行時間 メモリ
01.txt 1 ms 256 KB
02.txt 1 ms 256 KB
10.txt 1 ms 256 KB
11.txt 1 ms 256 KB
12.txt 1 ms 256 KB
13.txt 1 ms 256 KB
14.txt 1 ms 256 KB
15.txt 1 ms 256 KB
16.txt 1 ms 256 KB
17.txt 1 ms 256 KB
18.txt 1 ms 256 KB
19.txt 1 ms 256 KB