	#include<stdio.h>
	#include<stdlib.h>
	#include<string.h>
	double ans[10][120][300]={0};
	double recursion(int balls, int reqRuns, int wickets);
	int readScore(void);
	int main()
	{
	int t;
	scanf("%d",&t);
	while(t--)
	{
		memset(ans,-1,sizeof(ans));
		float overs;
		int myruns,wickets,target;
		scanf("%f",&overs);
		myruns=readScore();
		scanf("%d",&wickets);
		//printf("%d %d\n",myruns,wickets );
		scanf("%d",&target);
		//printf("%d %d %d\n",myruns,wickets,target);
		if(myruns>=target)
		{
			printf("%s\n","100.00");
			continue;
		}
		else if(wickets>=10)
		{
			printf("%s\n", "0.00");
			continue;
		}
	//	printf("overs = %f\n", overs);
		int ov = (int) overs;
		int ball = (int)(overs*10)%10;
		int totballs = 6*ov+ball;
	//	printf("%d %d\n",ov,ball );
	//	printf("%d %d %d\n",totballs, target- myruns,wickets );
		float finalAns = recursion(totballs,target-myruns, wickets)*100;
		// float temp = finalAns * 100;
		// printf("temp = 0%f\n",temp );
		// int fa = (int)(temp);
		// printf("fa = %d\n", fa);
		// finalAns = fa/100;
		char temp[1000]={0};
		sprintf(temp,"%0.3f",finalAns);
		temp[999]='\0';
		int k=0;
		while(temp[k]!='\0')
		{
			if(temp[k]=='.')
				break;
			putchar(temp[k++]);
		}
		putchar(temp[k++]);
		putchar(temp[k++]);
		putchar(temp[k++]);
		printf("\n");
		//printf("%.2f\n",finalAns);

	}
		return 0;
	}
	int readScore()
	{
	char ch;
	int ans2=0;
	ch = getchar();
	//ch = getchar();
	//ans = ans*10 + ch-'0';
	//printf("sadasdas %d\n",ch );
	while(ch!='/')
	{
		ch=getchar();
		//printf(" ch = %d\n", ch-'0');
		if(ch!='/')
		ans2 = ans2*10 + ch-'0';

	}
	//printf("%d\n",ans );
	return ans2;
	}
	double recursion(int balls, int reqRuns, int wickets)
	{
		if (reqRuns<=0)
			return 1;
		if (balls==120||wickets==10)
			return 0;
	if((int)ans[wickets][balls][reqRuns]>=0)
		return ans[wickets][balls][reqRuns];

	ans[wickets][balls][reqRuns] = (recursion(balls+1, reqRuns,wickets)/10+recursion(balls+1, reqRuns-1,wickets)/10+
	recursion(balls+1, reqRuns-2,wickets)/10+recursion(balls+1, reqRuns-3,wickets)/10+
	recursion(balls+1, reqRuns-4,wickets)/10+recursion(balls+1, reqRuns-5,wickets)/10+
	recursion(balls+1, reqRuns-6,wickets)/10+recursion(balls+1, reqRuns,wickets+1)/10+
	2*recursion(balls, reqRuns-1,wickets)/10);
	return ans[wickets][balls][reqRuns];

	}
