Pagini recente » Cod sursa (job #1849773) | Cod sursa (job #783737) | Cod sursa (job #142573) | Cod sursa (job #763281) | Cod sursa (job #1722917)
#include <fstream>
using namespace std;
ifstream fin("cifre5.in");
ofstream fout("cifre5.out");
unsigned long long n,x;
long long prod,s;
int a[24],b[24],optiune;
int M[11]={2,6,2,3,3,4,2,3,1,1};
int T[11]={2,7,2,3,3,4,2,5,1,2};
void Citire()
{
fin>>optiune>>n;
fin.close();
}
void Cerinta1()
{
int i,cnt;
cnt=0;
x=n;
while(x!=0)
{
a[++s]=x%10;
x/=10;
}
for(i=s;i>=1;i--)
{
if(a[i]==8)cnt+=7;
if(a[i]==9 || a[i]==6 || a[i]==0)cnt+=6;
if(a[i]==7)cnt+=3;
if(a[i]==5 || a[i]==3 || a[i]==2)cnt+=5;
if(a[i]==4)cnt+=4;
if(a[i]==1)cnt+=2;
}
fout<<cnt<<"\n";
}
void Cerinta2()
{
int i,j,s1=0;
s=0;
while(n!=0)
{
b[++s1]=n%10;
n/=10;
}
for(i=s1;i>=1;i--)
{
prod=M[b[i]]-1;
for(j=i-1;j>=1;j--)
{
prod=prod*T[b[j]];
}
s+=prod;
}
fout<<s<<"\n";
}
int main()
{
Citire();
if(optiune==1)Cerinta1();
else if(optiune==2)Cerinta2();
fout.close();
return 0;
}