Hacker Earth Practice Problems - What is the string made of?


Problem Statement:
You are given a string, which contains entirely of decimal digits (0-9). Each digit is made of a certain number of dashes, as shown in the image below. For instance 1 is made of 2 dashes, 8 is made of 7 dashes and so on.
digits made of dashes
You have to write a function that takes this string message as an input and returns a corresponding value in terms of a number. This number is the count of dashes in the string message.
Note:
0 consists of 6 dashes, 1 consists of 2 dashes, 2 consists of 5 dashes, 3 consists of 5 dashes, 4 consists of 4 dashes, 5 consists of 5 dashes, 6 consists of 6 dashes, 7 consists of 3 dashes [though the figure shows that 7 consists of 4 dashes but due to minor mistake in the problem please write your solution assuming 7 consists of 3 dashes], 8 consists of 7 dashes, 9 consists of 6 dashes.
Constraints
  • String message will contain at least one digit, but not more than 100
  • Each character in code will be a digit (‘0’-‘9’).

Sample Input
12134
Sample Output
18

Solution:
Language: C
#include <stdio.h>
#include<string.h>
int main()
{
 char a[100];
 scanf("%s",&a);
 int l= strlen(a);
 int sum=0;
 for(int i=0; i<l; i++)
 {
 if(a[i]=='0')
 sum+=6;
 if(a[i]=='1')
 sum+=2;
 if(a[i]=='2')
 sum+=5;
 if(a[i]=='3')
 sum+=5;
 if(a[i]=='4')
 sum+=4;
 if(a[i]=='5')
 sum+=5;
 if(a[i]=='6')
 sum+=6;
 if(a[i]=='7')
 sum+=3;
 if(a[i]=='8')
 sum+=7;
 if(a[i]=='9')
 sum+=6;
 }
 printf("%d",sum);
}

Comments

Popular Posts