結果
問題 |
No.959 tree and fire
|
ユーザー |
|
提出日時 | 2020-01-21 11:29:43 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 602 bytes |
コンパイル時間 | 579 ms |
コンパイル使用メモリ | 68,480 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-05 05:16:45 |
合計ジャッジ時間 | 2,097 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 53 WA * 1 |
ソースコード
#include<iostream> #include<math.h> #define REP(i,N) for(int i=0,__i=N;i<__i;++i) long long N,M; double P; bool input(){ using namespace std; cin>>N>>M; cin>>P; if(N<1||N>pow(10,9)||M<1||M>pow(10,9)||P<0||P>1) return false; return true; } double solve(){ double sum_=0; if(N>1&&M>1){ sum_+=P*pow(P,2)*4; sum_+=P*pow(P,3)*((N-2)+(M-2))*2; sum_+=P*pow(P,4)*(N-2)*(M-2); } else{ int big=std::max(N,M); sum_+=P*P*(N==1&&M==1?1:2)+P*pow(P,2)*(big-2); } return sum_; } int main(){ using namespace std; if(!input()) return -1; double res=solve(); printf("%.10lf\n",res); }