#include #include #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); if(big==1) sum_+=P; else sum_+=P*P*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); }