Cod sursa(job #654911)

Utilizator alex_ovidiunituAlex Ovidiu Nitu alex_ovidiunitu Data 31 decembrie 2011 12:09:53
Problema Cifre Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
// 100 puncte
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
	int sol,A,B,C,K,cnt,x,Timp;

	freopen("cifre.in","r",stdin);

	scanf("%d%d%d%d",&A,&B,&C,&K);

	Timp=1005000;

	srand(time(NULL));

	sol=0;
	while(Timp)
	{
		x=A+rand()%(B-A+1);

		cnt=0;
		while(x)
		{
			if(x%10==C) cnt++;
			x/=10;
		}

		if(cnt>=K) sol++;

		Timp--;
	}

	freopen("cifre.out","w",stdout);

	printf("%.4f",(double)sol/1005000);

	return 0;
}

/*- 50 puncte
#include<iostream>
#include<fstream>
#include<algorithm>
#include<math.h>
#include<iomanip>
using namespace std;
int apar,sol;
int main(void)
{
	int a,b,c,k,q,x,i;
	fstream f,g;
	f.open("cifre.in",ios::in);
	g.open("cifre.out",ios::out);
	f>>a>>b>>c>>k;
	for (i=a;i<=b;i++)
	{
		x=i;
		apar=0;
		while (x)
		{
			q=x%10;
			if (q==c)
				apar++;
			x=x/10;
		}
		if (apar>=k)
			sol++;
	}
	g<<fixed<<setprecision(4)<<float(float (sol)/(double)(b-a+1));
}
*/