Submission #526196


Source Code Expand

/*
	Author : ChnLich
*/
#include<cstdio>
#include<cmath>
#include<iomanip>
#include<cstring>
#include<cstdlib>
#include<ctime>
#include<iostream>
#include<sstream>
#include<fstream>
#include<algorithm>
#include<vector>
#include<list>
#include<stack>
#include<queue>
#include<deque>
#include<set>
#include<map>
#include<string>
#include<bitset>
#include<functional>
#include<utility>
 
using namespace std;
 
typedef long long llint;
typedef pair<int,int> ipair;
typedef unsigned int uint;
#define pb push_back
#define fi first
#define se second
#define mp make_pair
 
const int MOD=1000000007,dx[]={0,1,0,-1},dy[]={1,0,-1,0};
const double eps=1e-8;
 
void read(int &k)
{
	k=0; char x=getchar();
	while(x<'0'||x>'9') x=getchar();
	while(x>='0'&&x<='9') { k=k*10-48+x; x=getchar(); }
}
 
int n1,n2,n3,P1,P2,P3;
double p1,p2,p3;
double f[101][101][101][4];
 
int main()
{
	//freopen("E.in","r",stdin);
	
	scanf("%d%d%d",&n1,&n2,&n3);
	scanf("%d%d%d",&P1,&P2,&P3);
	p1=P1/100.0;
	p2=P2/100.0;
	p3=P3/100.0;
	for(int i=0;i<=n1;i++)
	for(int j=0;j<=n2;j++)
	for(int k=0;k<=n3;k++) if (i||j||k)
	{
		double x=1e100,y=1e100,z=1e100,w=1e100;
		if (i) x=min(x,f[i-1][j][k][1]+100.0/P1);
		if (j) x=min(x,f[i][j-1][k][1]+100.0/P2);
		if (k) x=min(x,f[i][j][k-1][1]+100.0/P3);
		f[i][j][k][0]=x;
		if (i) y=min(y,f[i-1][j][k][2]*p1+(1-p1)*x);
		if (j) y=min(y,f[i][j-1][k][2]*p2+(1-p2)*x);
		if (k) y=min(y,f[i][j][k-1][2]*p3+(1-p3)*x);
		f[i][j][k][1]=y;
		if (i) z=min(z,f[i-1][j][k][3]*p1+(1-p1)*x);
		if (j) z=min(z,f[i][j-1][k][3]*p2+(1-p2)*x);
		if (k) z=min(z,f[i][j][k-1][3]*p3+(1-p3)*x);
		f[i][j][k][2]=z;
		if (i) w=min(w,f[i-1][j][k][0]*p1+(1-p1)*x);
		if (j) w=min(w,f[i][j-1][k][0]*p2+(1-p2)*x);
		if (k) w=min(w,f[i][j][k-1][0]*p3+(1-p3)*x);
		f[i][j][k][3]=w;
	}
	printf("%.10lf\n",f[n1][n2][n3][0]);
	
	return 0;
}

Submission Info

Submission Time
Task E - Game
User daisy8867
Language C++ (G++ 4.6.4)
Score 0
Code Size 1902 Byte
Status WA
Exec Time 138 ms
Memory 33084 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:54:29: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:55:29: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
AC × 4
WA × 1
AC × 15
WA × 7
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.txt
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.txt, subtask1_manual_01.txt, subtask1_manual_02.txt, subtask1_manual_03.txt, subtask1_manual_04.txt, subtask1_manual_05.txt, subtask1_manual_06.txt, subtask1_manual_07.txt, subtask1_random_01.txt, subtask1_random_02.txt, subtask1_random_03.txt, subtask1_random_04.txt, subtask1_random_05.txt, subtask1_random_06.txt, subtask1_random_07.txt, subtask1_random_08.txt, subtask1_random_09.txt, subtask1_random_10.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 26 ms 924 KB
subtask0_sample_02.txt AC 138 ms 33076 KB
subtask0_sample_03.txt WA 25 ms 924 KB
subtask0_sample_04.txt AC 26 ms 928 KB
subtask0_sample_05.txt AC 25 ms 1340 KB
subtask1_manual_01.txt AC 25 ms 920 KB
subtask1_manual_02.txt AC 23 ms 928 KB
subtask1_manual_03.txt AC 27 ms 924 KB
subtask1_manual_04.txt AC 115 ms 33084 KB
subtask1_manual_05.txt AC 120 ms 33084 KB
subtask1_manual_06.txt AC 106 ms 31480 KB
subtask1_manual_07.txt WA 108 ms 27196 KB
subtask1_random_01.txt WA 68 ms 21816 KB
subtask1_random_02.txt WA 37 ms 5688 KB
subtask1_random_03.txt AC 42 ms 10424 KB
subtask1_random_04.txt AC 27 ms 1692 KB
subtask1_random_05.txt WA 37 ms 5688 KB
subtask1_random_06.txt WA 64 ms 19900 KB
subtask1_random_07.txt AC 37 ms 6072 KB
subtask1_random_08.txt AC 40 ms 5796 KB
subtask1_random_09.txt WA 39 ms 6840 KB
subtask1_random_10.txt AC 34 ms 5048 KB